Что означает этот код JavaScript? - PullRequest
0 голосов
/ 30 декабря 2010
function myFunc(theObject) {  
      theObject = new TheObject("Ford","Focus",2006);  
} 

Почему new TheObject() используется вместо чего-то вроде new Object()?Я не понимаю.

Ответы [ 4 ]

4 голосов
/ 30 декабря 2010

Где-то здесь создается "класс" function TheObject(...), который происходит до этого во включенном коде, это то, что он создает * 1003.

3 голосов
/ 30 декабря 2010

Чтобы код, который вы опубликовали, работал, где-то еще на той же странице должно быть что-то вроде следующего:

var TheObject = function(make, model, year) {
  this.make = make;
  this.model = model;
  this.year = year;
}

Затем ваш опубликованный код создаст новый объект со свойствами, определенными функцией TheObject. (В приведенном выше примере вы можете получить доступ к марке вашего нового объекта, ссылаясь на theObject.make.)

3 голосов
/ 30 декабря 2010

TheObject - это пользовательский объект.

2 голосов
/ 30 декабря 2010

Здесь TheObject - это тип объекта (класса), которым является «theObject». Функция с тем же именем, что и тип, называется конструктором. Вызов его создает новый объект этого типа. (например, для типа TheObject новый TheObject () создает новый объект типа TheObject)

Подумайте об этом так: функция ниже делает myAuto новым объектом Car (типа «Автомобиль»):

function myNewFunc(myAuto) {
  myAuto = new Car("Audi","TT",2001);
}

(Возможно, терминология "Объект" против "TheObject" против "theObject" вводит вас в заблуждение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...