犀牛——第7章数组 7.6 数组遍历ssh使用

来源:互联网 发布:脸部比例测试软件 编辑:程序博客网 时间:2024/05/22 12:21

7.6 数组遍历

使用for循环是遍历数组元素最常见的方法:

var keys = Object.keys(o);   //获得o对象属性名组成的数组

var values = []                       //在数组中存储匹配属性的值

for(var i = 0; i < keys.length; i++){

      var key = keys[i];

       values[i] = o[key];

}

优化:

for(var i = 0,len = keys.length; i < len; i++){

}

如果想要排除null、undefined和不存在的元素:

for(var i = 0; i < a.length; i++){

    if(!a[i]) continue;   //跳过null、undefined和不存在的元素

    if(a[i] === undefined) continue; //跳过undefined+不存在的元素

    if(!(i in a)) continue;    //跳过不存在的元素

}


还可以使用for/in循环处理稀疏数组。循环每次将一个可枚举的属性名(包括数组索引)赋值给循环变量。

for(var index in sparseArray){
    var value = sparseArray[index];

    //

}

for/in循环能够枚举继承的属性名,在数组上不应该使用for/in循环,除非过滤掉不想要的属性

7.7 多维数组

JavaScript不支持真正的多维数组,但可以用数组的数组来近似。

//创建一个多维数组

var table = new Array(10);   //表格有10行

for(var i = 0; i < table.length; i++)

      table[i] = new Array(10);     //每行有10列

//初始化数组

for(var row = 0; row < table.length; row++){

   for(var col = 0; col < table[row].length; col++){

      table[row][col] = row*col;

   }

}

//使用多维数组来计算5*7

var product  table[5][7];  //35











0 0
原创粉丝点击