js_hw_07.md 4.7 KB

Initialize

function Person(name, surname, age, sex, salary, married){
	this.name = name
	this.surname = surname
	this.age = age
	this.sex = sex
	this.salary = salary
	this.married = married
}
var person = new Person("Vadim", "Zgonnik", "22", "male", "4k", "notMarried");

Closure getters and setters

function Person(){

	var name = "";
	this.setName = function(newName){
		if((newName !="") && (typeof(newName)=='string')){
			name = newName;
		}
		return name
	}
	this.getName = function(){
		return name
	}

	var surName = "";
	this.setsurName = function(newsurName){
		if((newsurName !="") && (typeof(newsurName)=='string')){
			surName = newsurName;
		}
		return surName
	}
	this.getsurName = function(){
		return surName
	}

	var age = 0;
	this.setAge = function(newAge){
		newAge = +newAge
		if((!isNaN(newAge)) && (newAge >0) && (newAge <100) && (typeof(newAge)=='number')){
			age = newAge;
		}
		return age
	}
	this.getAge = function(){
		return age
	}

		var sex = "male/female";
	this.setSex = function(newSex){
		if((newSex == "male")||(newSex == "female") && (newSex !="") && (typeof(newSex)=='string')){
			sex = newSex;
		}
		return sex
	}
	this.getSex = function(){
		return sex
	}

		var salary = 0;
	this.setSalary = function(newSalary){
		newSalary = +newSalary
		if((!isNaN(newSalary)) && (newSalary >0)  && (typeof(newSalary)=='number')){
			salary = newSalary;
		}
		return salary
	}
	this.getSalary = function(){
		return salary
	}


		var merried = "true/false";
	this.setMerried = function(newMerried){
		if((newMerried == "false")||(newMerried == "true") && (newMerried !="") && (typeof(newMerried)=='string')){
			merried = newMerried;
		}
		return merried
	}
	this.getMerried = function(){
		return merried
	}
}

var person = new Person();

console.log(person.setName("vadim"));
console.log(person.setName(123));
console.log(person.setsurName("qwe"));
console.log(person.setsurName(123));
console.log(person.setAge("qwe"));
console.log(person.setAge(23));
console.log(person.setSex("male"));
console.log(person.setSex("female"));
console.log(person.setSex(23));
console.log(person.setSalary("qwe"));
console.log(person.setSalary(23));
console.log(person.setMerried("true"));
console.log(person.setMerried("false"));
console.log(person.setMerried(23));

setFather

function Person(name, surname, age, sex, salary, married){
	this.name = name
	this.surname = surname
	this.age = age
	this.sex = sex
	this.salary = salary
	this.married = married

	var father = "";
this.setFather = function(newFather){
	father = newFather
	 return father
}
this.getFather = function(){
	return father
}
}



var father = new Person("Batya", "Batyan", 50, "male", 250000, "true")
var son = new Person("Son", "Batyan", 20, "male", 150, "false")

console.log(son.setFather(father));

getFatherName

function Person(name, surname, age, sex, salary, married){
	this.name = name
	this.surname = surname
	this.age = age
	this.sex = sex
	this.salary = salary
	this.married = married


this.setFather = function(newFather){
	this.father = newFather
	 return this.father
}
this.getFatherName = function(){
	if(this.sex == "male"){
		return this.father.name + "ovich"
	} else {
		return this.father.name + "ovna"
	}

}
}



var father = new Person("qwe", "Batyan", 50, "male", 250000, "true")
var son = new Person("Son", "Batyan", 20, "male", 150, "false")

var father2 = new Person("Batya", "Batyan", 60, "male", 2500000, "true")
var daughter = new Person("daughter", "Batyan", 25, "female", 150, "false")

console.log(son.setFather(father));
console.log(son.getFatherName());
console.log(daughter.setFather(father2));
console.log(daughter.getFatherName());

addChild

function Person(name, surname, age, sex, salary, married){
	this.name = name
	this.surname = surname
	this.age = age
	this.sex = sex
	this.salary = salary
	this.married = married
 	
 	var children = [];

this.addChild = function(newChild){
	if((this.age - newChild.age)>=15){
		children.push(newChild);
	}
	
	 return children
}
}

var father = new Person("Batya", "Batyan", 50, "male", 250000, "true")
var children = new Person("son1", "Batyan", 15, "male", 0, "false")
var children1 = new Person("son2", "Batyan", 25, "male", 160, "true")

console.log(father.addChild(children))
console.log(father.addChild(children1))

Sum

function sum(n) {
  if (n == 1) return 1;
  return n + sum(n - 1);
}

console.log(sum(10))



var makeProfileTimer = function timer(){
	var a = (new Data().perfomansNow());	
	return a;
	function(){
		var b = (new Data().perfomansNow())
		return
	}
}


var timer = makeProfileTimer();

alert(timer());



for(var i = 5; i >0; i--){
	(function(_i){
		var _i = i;
	setTimeout(()=> console.log(_i), 1000*(6-i))
})(i)
}