[英]Check for empty element in array
類似於我最近發布的內容,但不相同:-)
我正在嘗試在GAS中測試數組是否包含任何空值。 includes()
似乎不受支持,因此我一直在嘗試使用索引,但失敗了。 我的測試代碼如下,其中空元素位於7之前
var e = [1,2,3,4,2,4,,7];
var x = 0;
if (e.indexOf() ==-1){
var x = 'No blanks';
}
但是無論我嘗試什么,它總是會過去。 我已經嘗試過indexOf("")
, indexOf('')
和indexOf()
。
我已經沒有足夠的嘗試機會了,因此任何幫助都會得到很大的幫助!
您所擁有的是一個備用陣列 。 缺少的元素沒有空字符串,根本就沒有。 因為缺少的元素也不可枚舉,所以當您使用諸如indexOf
類的數組方法時,它也不會顯示。 您可能會檢查鍵的數量是否等於數組的length
:
var e = [1,2,3,4,2,4,,7]; var x = Object.keys(e).length === e.length ? 'OK!' : 'Blank element detected'; console.log(x); // constrast with a normal array: e = [1,2,3,4,2,4,7]; x = Object.keys(e).length === e.length ? 'OK!' : 'Blank element detected'; console.log(x);
要查找所有空元素的鍵(如果有):
var e = [1,,3,4,2,,7]; var o = Object.keys(e); m = []; o.forEach(function(e,i){ if(i>0 && eo[i-1]>1){ m.push(e-1) } }) console.log(m); console.log(m.length);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.