Javascript.RU

in

Синтаксис

prop in object

Аргументы

prop
Строка или числовое выражение, являющееся именем свойства или индексом массива
object
Объект для поиска в нем свойства или массив - для проверки индекса

Описание, примеры

Оператор in возвращает true, только если данное свойство присутствует в объекте или его прототипе.

Пример: объект
obj = {
  a: 5
}

"a" in obj // true
"b" in obj // false
"toString" in obj // true, т.к toString есть в прототипе

Следующий пример иллюстрирует проверку индекса в массиве:

Пример: массив
arr = [ "a", "b", "c"]

1 in arr // true
22 in arr // false

delete arr[1]
1 in arr // false : элемент удален

Справа от оператора in должен находится объект, иначе интерпретатор сгенерирует ошибку TypeError.

'a' in "test" // TypeError

См. также


Автор: Гость (не зарегистрирован), дата: 10 февраля, 2011 - 18:46
#permalink

хотелось бы чего-то типа такого:

if ('myclass' in obj.className.split[' ']) return true; else return false;

или
return ('myclass' in obj.className.split[' ']);

вместо:
var r=false;
var c=obj.className.split(' ');
for (var i=0;i


Автор: Гость (не зарегистрирован), дата: 10 февраля, 2011 - 18:48
#permalink
var r=false;
var c=obj.className.split(' ');
for (var i=0;i<c.length;i++) if (c[i]=='myclass') r=true;
return r;

Автор: Antony (не зарегистрирован), дата: 8 сентября, 2011 - 12:04
#permalink

А есть ли возможность использовать in для быстрого поиска по перечислению?
К примеру, как в Python:

if myString in ("one", "two", "three"):
...


Автор: Гость (не зарегистрирован), дата: 2 января, 2012 - 19:10
#permalink

if ( ["one", "two", "three"].indexOf(myString) !== -1 ) { ... }


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
2 + 0 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Реклама
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние комментарии
Последние темы на форуме
Forum