Как пропустить один из параметров?

282
28 марта 2017, 13:37
var Anchor = {
  name: "Homo Sapiens",
  arms: 2,
  legs: 2,
  head: 1
}
var Man = function(name, age) {
  this.name = name;
  this.age = age;
}
Man.prototype = Anchor;
var nick = new Man('Nick', 45);
console.log(nick.name);   //Nick

Нужно сделать объект, который будет наследовать имя из своего прототипа. Надо пропустить первый параметр, но не знаю как.

var unknown = new Man('?' ,55);
console.log(unknown.name)    //Должно быть "Homo Sapiens"
Answer 1

Ты можешь просто проверять аргументы в конструкторе:

var Anchor = { 
  name: "Homo Sapiens", 
  arms: 2, 
  legs: 2, 
  head: 1 
} 
 
var Man = function(name, age) { 
  if (name) this.name = name; 
  this.age = age; 
} 
 
Man.prototype = Anchor; 
var nick = new Man(null, 45); 
console.log(nick.name);   // Homo Sapiens 
 
// Другой вариант - считать количество аргументов и интерпретировать сигнатуру исходя из него 
 
var Man1 = function (name, age) { 
  if (arguments.length > 1) { 
    this.name = name; 
    this.age = age; 
  } else if (arguments.length == 1) { 
    this.age = name; 
  } 
} 
Man1.prototype = Anchor; 
 
var yr19 = new Man1(19); 
var Bob = new Man1('Bob', 32); 
 
console.log((new Man1).name); // Homo Sapiens 
console.log(yr19.name, yr19.age); // Homo Sapiens 19 
console.log(Bob.name, Bob.age); // Bob 32

READ ALSO
bootstrap 4 popover js ошибка

bootstrap 4 popover js ошибка

Сначала делаю фокус в input и если следующий клик это label для этого инпута, то вылетает ошибка в консоль:

297
Можно ли на стороне клиента подменить window.location.href?

Можно ли на стороне клиента подменить window.location.href?

Доброго времени суток, господа! Нужно передать в php параметр - текущую ссылку(изначально загруженную), используя windowlocation

326
Работа с vk api на js

Работа с vk api на js

Получаю данные

362
Javascript стринги в отдельный файл

Javascript стринги в отдельный файл

ЗдравствуйтеМечтаю вынести стринговые переменные в отдельный файл, потом вызывать их по мере необходимости

241