Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как различить методы и свойства? (https://javascript.ru/forum/dom-window/7897-kak-razlichit-metody-i-svojjstva.html)

B~Vladi 25.02.2010 02:00

Цитата:

Сообщение от возжаждавший
Ну то есть я увидел создание объекта obj (Какого типа? Или это напрасный вопрос- следствие языка С?)

Тип объекта в JS - достаточно абстрактное понятие (даже typeof и тот не лишен багов). Просто нужно осознать, что в JS есть объекты различных интерфейсов (именно так мне проще было понять их различия). Т.е. мы имеем массивы, функции, переменные - всё это объекты, но с различными интерфейсами доступа (API). А т.к. это объекты - у них есть что-то общее, например динамическое изменение свойств.
Цитата:

Сообщение от возжаждавший
Как может единица быть свойством?

В твоем примере единица это значение, я не свойство. Хотя можно определить и свойство, по имени 1:)
Цитата:

Сообщение от возжаждавший
var anchorCount=document.anchors.length
Как прочесть? ЕСть объект document, который обладает свойством anchors, которое В СВОЮ ОЧЕРЕДЬ также обладает свойством lenght? ПОлучается, у свойства есть свойство?

Именно. Бывают конструкции и похуже. Например, есть объект с методом. Этот метод имеет свойство. Мы можем обращаться и к свойству метода (или к свойству свойства) и вызывать сам метод. В общем, вложенность свойств может быть любой, не зависимо от типа.

ЗЫ: Постоянно слышу от Java-программистов, мол как вы в этом JS разбираетесь? Непонятно что откуда приходит и куда уходит:D
В принципе, может быть и так, что Java Script-код после выполнения сам себя удалит и концов потом вообще не найти:D

возжаждавший 25.02.2010 02:01

Ну да. Вот написано "Переход от процедурного к объектно-ориетированному программированию может быть самым трудным моментом в обучении"
JavaScript. Библия пользователя, Гудман, Моррисон. буду её штутдировать. Спасибо всем. Если не продвинусь сам, спрашивать ничё не буду, а заброшу это дело.

B~Vladi 25.02.2010 02:05

Цитата:

Сообщение от возжаждавший
Если не продвинусь сам, спрашивать ничё не буду, а заброшу это дело.

Ну после СИ грех не продвинуцо :)

Kolyaj 25.02.2010 12:41

Цитата:

Сообщение от B~Vladi
Тип объекта в JS - достаточно абстрактное понятие

Что в нём абстрактного?

B~Vladi 25.02.2010 13:19

Цитата:

Сообщение от Kolyaj
Что в нём абстрактного?

Само по себе это абстрактное понятие. Плюс бывают ещё и разные типы этих объектов в JS. Например, функция. По логике вещей, к объекту (в понятии new Object) она отношение вообще не должна иметь.

Kolyaj 25.02.2010 13:23

Цитата:

Сообщение от B~Vladi
Само по себе это абстрактное понятие.

Я это и спросил: что в нём абстрактного?

Цитата:

Сообщение от B~Vladi
По логике вещей, к объекту (в понятии new Object) она отношение вообще не должна иметь.

По какой логике? Function является наследником Object.

1 -- число.
"a" -- строка.
[] -- объект с прототипом Array.
Что абстрактного?

B~Vladi 25.02.2010 13:28

Wikipedia:
Цитата:

По Смиту и Токи, объект - конкретный опознаваемый предмет, единица или сущность (реальную или абстрактная), имеющая четко определенное функциональное назначение в данной предметной области
Достаточно абстрактное определение, не находишь?:)
Цитата:

Сообщение от Kolyaj
По какой логике?

По моей:)
Я про то, что задачи у них совершенно разные.

B~Vladi 25.02.2010 13:33

1 -- число. Может приводиться к объекту, типа Number.
"a" -- строка. Может приводиться к объекту, типа String.
[] -- объект с прототипом Array. Уже объект, со своим интерфейсом.
{} -- Ещё один объект, но с другим интерфейсом.
И т.д...
Так кто же из них настоящий объект?

B~Vladi 25.02.2010 13:50

Епт, вот я туплю. Тип объекта с объектом перепутал:D
Нада кароче в отпуск срочно:)

Kolyaj 25.02.2010 14:41

Цитата:

Сообщение от B~Vladi
1 -- число. Может приводиться к объекту, типа Number.

Может приводится, а может не приводится. Точно также число может и к строке приводится. Также как и строка к числу. Это обычное приведение типов, список которых (вполне конкретный, а не абстрактный) есть и на этом сайте.

Цитата:

Сообщение от B~Vladi
Так кто же из них настоящий объект?

Объекты всё, кроме примитивных типов.


Часовой пояс GMT +3, время: 06:19.