#javascript #angular #logical-operators
#javascript #угловой #логические операторы
Вопрос:
Я хочу зациклить приведенный ниже код. Как я могу сохранить имена столбцов в массиве и возвращать по циклу?
return Students.filter((singleItem) => {
singleItem["id"].toLowerCase().includes(value.toLowerCase()) ||
singleItem["name"].toLowerCase().includes(value.toLowerCase()) ||
singleItem["class"].toLowerCase().includes(value.toLowerCase())
});
Например:
var columns= ["id","name","class"];
return Students.filter((singleItem) => {
columns.map(data=>{
singleItem[data].toLowerCase().includes(value.toLowerCase()); //I have to use the "||" operation here. How can I use it in the loop?
})
});
Комментарии:
1. Просто добавьте его туда, где вы хотите его использовать.
Ответ №1:
Вы можете выполнить итерацию заданных ключей и завершить работу раньше Array#some
.
var columns = ["id", "name", "class"];
return Students.filter(singleItem =>
["id", "name", "class"].some(key =>
singleItem[key].toLowerCase().includes(value.toLowerCase())
)
);