Is there a good way to check if all indexes in an array are strings?
check(["asd", 123]); // false
check(["asd", "dsa", "qwe"]); // true
Is there a good way to check if all indexes in an array are strings?
check(["asd", 123]); // false
check(["asd", "dsa", "qwe"]); // true
You can use Array.every
to check if all elements are strings.
const isStringsArray = arr => arr.every(i => typeof i === "string")
console.log(
isStringsArray(['a','b','c']),
isStringsArray(['a','','c']),
isStringsArray(['a', ,'c']),
isStringsArray(['a', undefined,'c']),
isStringsArray(['a','b',1])
)
You could do something like this - iterate through the array and test if everything is a string or not.
function check(arr) {
for(var i=0; i<arr.length; i++){
if(typeof arr[i] != "string") {
return false;
}
}
return true;
}
Something like this?
var data = ["asd", 123];
function isAllString(data) {
var stringCount;
for (var i = 0; i <= data.length; i++) {
if (typeof data[i] === 'string')
stringCount++;
}
return (stringCount == data.length);
}
if (isAllString(data)) {
alert('all string');
} else {
alert('check failed');
}
My way:
check=function(a){
for ( var i=0; i< a.length; i++ ) {
if (typeof a[i] != "string")
return false;
};
return true;
}
console.log(check(["asd","123"])); // returns true
console.log(check(["asd",123])); // returns false