Пытаясь познакомиться с массивами extJS и имея некоторые проблемы с их настройкой, в настоящее время у меня есть следующий код ...
if (!multiLine){
phe = deviceType.search(check1);
if (phe !== -1){phoneExists = true;}
phe = deviceType.search(check2);
if (phe !== -1){phoneExists = true;}
phe = deviceType.search(check3);
if (phe !== -1){phoneExists = true;}
}
return phoneExists;
Вместо того, чтобы просто проверять 3 раза по отдельности, как я могу проверить все сразу в массиве?
Это больше вопрос Javascript, чем вопрос extJS. Вы можете использовать метод Array.some
, чтобы проверить, что найден хотя бы один элемент:
var devices = [check1, check2, check3]
var phoneExists = devices.some(x => deviceType.search(x) >= 0)
Подробнее о Array.some
var devices = [check1, check2, check3]; var phoneExists = devices.some (x> deviceType.search (x)> 0); Uncaught ReferenceError: x не определен
Это должно быть с =>
, а не с >
, где у вас есть pos.some(x
... var devices = [check1, check2, check3]; var phoneExists = pos.some (x => deviceType.search (x)> 0); Это функция стрелки ES6 и т. д.
Что, если я хочу проверить, имеет ли он значение == -1? а не правда или ложь?
var phoneExists = devices.some(x => deviceType.search(x) == -1)
У меня была орфографическая ошибка, когда я это тестировал, лол, извините, спасибо
Я получаю ошибки, когда пытаюсь запустить этот код через Sencha Architect, есть идеи, что нужно изменить?