Я работаю с Titanium, мой код выглядит так:
var currentData = new Array();
if(currentData[index]!==""||currentData[index]!==null||currentData[index]!=='null')
{
Ti.API.info("is exists " + currentData[index]);
return true;
}
else
{
return false;
}
Я передаю индекс в массив currentData
. Я все еще не могу обнаружить несуществующий элемент, используя приведенный выше код.
&&
) между отдельными условиями.Ответы:
использование
typeof arrayName[index] === 'undefined'
т.е.
источник
if(arrayName[index] === 'undefined')
в качестве ярлыкаif(arrayName[index] === undefined)
.источник
if(myArray.indexOf(searchTerm) === -1)
Кто-то, пожалуйста, поправьте меня, если я ошибаюсь, но AFAIK верно следующее:
hasOwnProperty
«унаследованный» отObject
hasOwnProperty
можно проверить, существует ли что-либо в индексе массива.Таким образом, если вышеизложенное верно, вы можете просто:
const arrayHasIndex = (array, index) => Array.isArray(array) && array.hasOwnProperty(index);
использование:
arrayHasIndex([1,2,3,4],4);
выходы:false
arrayHasIndex([1,2,3,4],2);
выходы:true
источник
Я должен был обернуть ответ techfoobar в
try
...catch
блок, вот так:... в любом случае это работает в chrome (в противном случае код остановился с ошибкой).
источник
arrayName
(илиindex
) не существовала. Простой доступ к неопределенному элементу массива не должен был привести к «ошибке»?Если элементы массива также являются простыми объектами или массивами, вы можете использовать некоторую функцию:
источник
some
это самый современный способ здесь. Он также может даже стать однострочнымmyArray.some(el => el.item === element.item && el.title === element.title)
Рассмотрим массив:
Если вы хотите проверить, существует ли name1 в a, просто протестируйте его
in
:источник
источник
Если вы используете underscore.js, то этот тип нулевой и неопределенной проверки скрыт библиотекой.
Итак, ваш код будет выглядеть так:
Теперь это выглядит намного более читабельным.
источник
Простой способ проверить товар существует или нет
источник
myArray[1000000] = 'Pear'
то ваша функция будет работать вечно.Этот способ, на мой взгляд, самый простой.
И, может быть, еще один способ сделать это.
источник
источник
Если вы ищете что-то подобное.
Вот следующий фрагмент
источник
Array.includes
проверить, является ли значение массивом, напримерdemoArray.indexOf(ArrayIndexValue) !== -1
. этот вопрос касается проверки того, существует ли индекс в массиве, что является совершенно другой проблемойВы можете просто использовать это:
источник
tmp = [0,0,0,0]
тогда существовать tmp [3]Проверьте, не является ли второй элемент в массиве неопределенным, используя
typeof
и проверяяundefined
источник
При попытке выяснить, существует ли индекс массива в JS, самый простой и короткий способ сделать это - через двойное отрицание.
источник
Это именно то, для чего предназначен
in
оператор. Используйте это так:Общепринятый ответ неправильно, это даст ложный отрицательный результат, если значение на
index
этоundefined
:источник
Если логическое выражение
истина, то 0 содержится в обр
источник
Это также хорошо работает, тестирование по типу против
undefined
.Тест:
источник