function A ( ){
this.t = function () { alert('Hello my little friend') }
}
var a = new A();
a.t();
Что означает this здесь, почему для каждого свойства и метода его нужно писать, почему без него нельзя описать свойство или метод?
Читаю здесь http://javascript.ru/tutorial/object/thiskeyword
function Animal(name) {
this.name = name
}
animal = new Animal("beastie");
Если следовать согласно картинке по этой ссылке:
1. Конструктор Animal инициализирует объект под названием animal.
2. После того, как инициализация объекта под названием animal прошла.
конструктор Animal создал где-то в оперативной памяти ячейку с названием this
которая стала ссылаться на свойства и методы конструктора под названием Animal?
3. Что вызывается если уже всё вызвалось ,если следовать согласно картинке?
Расшифруйте пожалуйста те, 3 пункта из той ссылки правильно.
Заранее благодарю.
Спустя 1 час, 9 минут, 40 секунд (3.03.2011 - 02:26) inpost написал(а):
Golovastik
this - тот объект, который вызвал данную функцию. То есть, чтобы сократить сам код в целом. Иначе бы ты передавал параметр ID, а потом его инициализировал как document.getElementById
this - тот объект, который вызвал данную функцию. То есть, чтобы сократить сам код в целом. Иначе бы ты передавал параметр ID, а потом его инициализировал как document.getElementById
Спустя 5 часов, 21 минута, 47 секунд (3.03.2011 - 07:47) alex12060 написал(а):
В объектах, this обозначает самого себя. Т.е. он показывает. что мы вызываем из данного класса (this) переменную (функцию).
this.name // этот класс.переменная имя
Спустя 2 часа, 3 минуты, 59 секунд (3.03.2011 - 09:51) Dezigo написал(а):
Еслы ты не понемаешь что тако this, значит нужно сначало выучить что такое объект.
Спустя 4 часа, 14 минут, 20 секунд (3.03.2011 - 14:06) Игорь_Vasinsky написал(а):
Цитата |
Еслы ты не понемаешь что тако this, значит нужно сначало выучить что такое объект. |
ага.. там же когда вглядываешься - прям выскакивает - ЧиТаЙ ПрО ОбЪеКт..
всё правильно что спросил.
Спустя 10 часов, 29 секунд (4.03.2011 - 00:06) Golovastik написал(а):
Я знаю что такое объект и чт отакое класс на пхп, я про Джаваскрипт спрашиваю.
1)А где хранится this само, в чём оно находится, в интерпретаторе или в ячейке Оп памяти?
2)
3)Вот этот код:
Это создание конструктора или класса Javascript?
1)А где хранится this само, в чём оно находится, в интерпретаторе или в ячейке Оп памяти?
2)
После вызова конструктора, конструктор инициализировал объект и конструктор стал указывать на этот объект или this(встроенная конструкция языка джаваскрипт)?
animal = new Animal("beastie");
3)Вот этот код:
function Animal(name) {
this.name = name
}
Это создание конструктора или класса Javascript?
Спустя 1 час, 15 минут, 21 секунда (4.03.2011 - 01:21) Golovastik написал(а):
То есть в зависимости от того в каком контексте зис находится он в зависимости от этого будет содержать ссылку на тот или иной именно объект, а не свойство или метод объекта?
Если я напишу так
pavel.dyrov.psix
На какой объект будет указывать ключевое слово зис.?
Если я напишу так
pavel.dyrov.psix
На какой объект будет указывать ключевое слово зис.?
Спустя 20 часов, 35 минут, 9 секунд (4.03.2011 - 21:57) Golovastik написал(а):
Если в Яваскрипте нету классов, тогда когда я создаю объект, я создаю объект объекта получается?
Спустя 1 час, 2 минуты, 4 секунды (4.03.2011 - 22:59) Golovastik написал(а):
Прочитал здесь: [url] http://ru.wikipedia.org/wiki/%D0%9F%D1%80%...%BD%D0%B8%D0%B5[/url]
Получается написав так я объявил просто метод ТЕСТ со свойствами, но не класс?
В прототип-ориентированных системах предоставляется два метода
создания нового объекта: клонирование существующего объекта,
либо создание объекта «с нуля».
Получается написав так я объявил просто метод ТЕСТ со свойствами, но не класс?
<script type="text/javascript">
function test(){
this.a = "Чай";
document.write(this.a);
}
var sssr = new test;
sssr.a;
</script>
Спустя 29 минут, 56 секунд (4.03.2011 - 23:29) Golovastik написал(а):
Здесь уточнить момент хотел.
А если бы я просто объявил функцию со свойствами, но не создавал бы объекта, тогда вот это:
означало бы создание объекта со свойствами?
<script type="text/javascript">
function test(){ //Это создание метода с именем ТЕСТ, тоже самое что я создал объект ТЕСТ?
this.a = "Чай";
document.write(this.a);
}
/*Если свойство объекта - это тоже объект, получается "объект объекта".*/
//То есть sssr.a свойство а - это объект?
var sssr = new test;
sssr.a;
</script>
А если бы я просто объявил функцию со свойствами, но не создавал бы объекта, тогда вот это:
function test(){
this.a = "Чай";
document.write(this.a);
}
означало бы создание объекта со свойствами?