繁体   English   中英

检查数组中的空元素

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM