![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 4 Всего: 144 |
Собственно, сабж.
Вот я получил, скажем, в параметрах некий объект. Если это массив, мне нужно обработать его каким-то особым образом. Как мне узнать, массив это или нет? Пробовал typeof, но он возвращает обычный 'object'. Думал различать по свойству length, но оно тоже есть у всех объектов. Что еще можно придумать? -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Zeroglif |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 644 Регистрация: 22.9.2005 Репутация: 28 Всего: 66 |
Stampede,
самое незамысловатое:
но нужно помнить, что: 1) есть пожилые версии браузеров, не поддерживающие оператор instanceof; 2) цепь прототипов можно (исходя из задач) руками как-то "поправить", при этом найдётся массив там, где его нет:
|
||||
|
|||||
| Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 4 Всего: 144 |
Аккуратнее с подменой прототипов. Если уж в таком ключе, то:
Я примерно так и собирался делать, если бы ничего лучшего не нашлось. Но тут подоспел Zeroglif О, вот этого я не знал. Тем более про возможные "неожиданности" -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: 2 Всего: 32 |
не понял. Почему так? -------------------- ![]() ![]() |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
И действительно, объект, обладающий всеми свойствами массива вполне может считаться массивом ;)
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: 2 Всего: 32 |
ну так не свойство же подставили, а сам объект! почему так ведет себя javascript?
-------------------- ![]() ![]() |
|||
|
||||
| Zeroglif |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 644 Регистрация: 22.9.2005 Репутация: 28 Всего: 66 |
Ну, так просто работает оператор instanceof, рыская по всей цепи прототипов.
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |