Originally published at
Ruby on Rails c нуля!. Please leave any
comments there.
JavaScript - объектно-ориентированный язык программирования в котором почти все является объектами. Основным отличием «объектно-ориентированности» JavaScript от, например, Ruby является то, что JavaScript является class-free языком программирования, то есть в JavaScript отсутствует концепция классов. Если в Ruby объект является экземпляром класса, то в JavaScript объект является просто объектом, а передача свойств происходит через прототипы и функции - конструкторы.
Давайте для начала разберемся с тем, что такое объект в JavaScript. Объект - это просто коллекция свойств. Если свойство объекта ссылается на функцию, то оно называется методом. Простой пример:
myObj = new Object();
myObj.property = "Value.";
myObj['second_property'] = 12;
myObj.third_property = function () { alert(this.property); };
alert(myObj.second_property); //12
alert(myObj.property); //Value.
myObj.third_property(); //Value.
Read the rest of this entry »