How do I check if an array includes a value in JavaScript?
Modern browsers have Array#includes, which does exactly that and is widely supported by everyone except IE:console.log(['joe','jane','mary'].includes('jane'));//true
functioncheckInput(input, words){return words.some(word=> input.toLowerCase().includes(word.toLowerCase()));}console.log(checkInput('"Definitely," he said in a matter-of-fact tone.',["matter","definitely"]));
let isInArray = arr.includes(valueToFind[, fromIndex])// arr - array we're inspecting// valueToFind - value we're looking for// fromIndex - index from which the seach will start (defaults to 0 if left out)// isInArray - boolean value which tells us if arr contains valueToFind
functioncheckInput(input, words){return words.some(word=>newRegExp(word,"i").test(input));}console.log(checkInput('"Definitely," he said in a matter-of-fact tone.',["matter","definitely"]));
javascript - Determine whether an array contains a value
varcontains=function(needle){// Per spec, the way to identify NaN is that it is not equal to itselfvar findNaN = needle !== needle;var indexOf;if(!findNaN &&typeofArray.prototype.indexOf==='function'){
indexOf =Array.prototype.indexOf;}else{indexOf=function(needle){var i =-1, index =-1;for(i =0; i <this.length; i++){var item =this[i];if((findNaN && item !== item)|| item === needle){
index = i;break;}}return index;};}return indexOf.call(this, needle)>-1;};