|
22.02.2012, 20:03
|
|
Профессор
|
|
Регистрация: 15.02.2011
Сообщений: 471
|
|
Во-первых массивы и массивоподобные объекты это разные сущности, которые итерируются совершенно по-разному. А во-вторых уже давным-давно написаны универсальные функции для работы с коллекциями, например в Underscore.
|
|
22.02.2012, 20:04
|
|
Профессор
|
|
Регистрация: 15.02.2011
Сообщений: 471
|
|
Сообщение от vasa_c
|
Вы считаете JS идеальным языком?
|
Нет, не считаю.
|
|
22.02.2012, 20:04
|
|
Профессор
|
|
Регистрация: 12.03.2008
Сообщений: 183
|
|
Цитата:
|
я еще раз повторю
|
я дал примерчик - написать функцию, учитывающую все возможные типы данных, работающую во всех браузерах и получить при этом удовольствие.
|
|
22.02.2012, 20:06
|
|
Профессор
|
|
Регистрация: 12.03.2008
Сообщений: 183
|
|
Цитата:
|
давным-давно написаны универсальные функции для работы с коллекциями, например в Underscore.
|
Понятно что функции написаны и что более-менее шарящий в предмете человек тоже их напишет если нужно.
Сама проблема именно в том, что эти функции пришлось писать, вместо того, чтобы просто работать с языком.
|
|
22.02.2012, 20:07
|
|
Профессор
|
|
Регистрация: 12.03.2008
Сообщений: 183
|
|
Цитата:
|
Во-первых массивы и массивоподобные объекты это разные сущности, которые итерируются совершенно по-разному.
|
Чем должна отличаться сущность итерации по Array() и HTMLCollection?
|
|
22.02.2012, 20:09
|
|
Профессор
|
|
Регистрация: 15.02.2011
Сообщений: 471
|
|
Сообщение от vasa_c
|
Понятно что функции написаны и что более-менее шарящий в предмете человек тоже их напишет если нужно.
Сама проблема именно в том, что эти функции пришлось писать, вместо того, чтобы просто работать с языком.
|
Конструкция for...in работает с абсолютно любыми видами коллекций, чем не универсальность?
|
|
22.02.2012, 20:10
|
|
Профессор
|
|
Регистрация: 15.02.2011
Сообщений: 471
|
|
Сообщение от vasa_c
|
Чем должна отличаться сущность итерации по Array() и HTMLCollection?
|
Тем что в массивах есть индексы, а во всех прочих - имена свойств, то есть первые являются числами, а вторые - строками.
|
|
22.02.2012, 20:23
|
Профессор
|
|
Регистрация: 22.02.2012
Сообщений: 163
|
|
Сообщение от vasa_c
|
я дал примерчик - написать функцию, учитывающую все возможные типы данных, работающую во всех браузерах и получить при этом удовольствие.
|
я нихрена не понял О_О
в чем ад работы с типами данных с typeof в javascript? можно пример кода где проявляется адовость?
|
|
22.02.2012, 20:32
|
|
|
Регистрация: 10.07.2008
Сообщений: 3,873
|
|
Вообще надо хотя бы разок заглянуть в http://javascript.ru/ecma/part11#a-11.4.3 и «ад кромешный» рассеется.
-------------
Сообщение от DreamTheater
|
Все верно, в JS null является объектом без прототипа, соответственно его тип - object.
|
Это Object.prototype.__proto__===null , сам null является отдельным типом, то что выдает typeof — соглашение
Сообщение от Dmitry Soshnikov
|
Всего стандарт определяет девять типов, причём непосредственно доступны в ECMAScript программе, всего шесть:
• Undefined
• Null
• Boolean
• String
• Number
• Object
Остальные три типа доступны лишь на уровне реализации…
|
Сообщение от Dmitry Soshnikov
|
оператор typeof возвращает строковое значение, взятое из жёстко закреплённой таблицы, где прописано: “для null – возвращать "object"
|
http://dmitrysoshnikov.com/ecmascrip...nyih-znacheniy
|
|
22.02.2012, 20:38
|
Профессор
|
|
Регистрация: 22.02.2012
Сообщений: 163
|
|
Octane,
ты стандарт наизусть знаешь?
|
|
|
|