201506091046_《JavaScript权威指南》(p143-151)

数组

 

  1. JavaScript数组元素索引未必连续,他们之间可能有空缺;
  2. a [-1.42] = true; //创建-1.42的属性  

          a ["1000"] = 0;  //数组的第1001个元素

          a [1.000];  //相当于 a [0]

      3. 删除一个数组的元素可以这样组织代码:arr.length = 0;

      4. 将数组的长度值设置为只读。var arr = [1,2,3]; Object.defineProperty(arr,"length",{writable : false});

      5. 

 

数组元素的添加和删除

     1. var arr = []; arr.push("zero"); arr.push("one","two");

     2. var arr = []; arr.push("zero"); arr.unshift("one","two");  //在数组头部插入元素  shift();第一个元素删除

     3. var arr = [1,2,3]; delete arr[2];  //[1,2,undefined];

     4. var arr = [1,2,3]; arr.pop(); //3

     5. splice(i,n,elements);  //i:从第几个开始;n:跨度几个元素;elements:if(n !==0) ?添加元素:删除;

     6. Object.keys(obj);  //获取索引(数组)

     7. var arrObj = [1,2,"apple",4,5,"","banana"];  for(var i = 0,l =arrObj.length;i < l;i++){if(!arrObj[i]) continue;alert(i);};  //0,1,2,3,4,6 跳过5

     8. 如果要跳过不存在元素而任然要处理undefined元素:for(var i = ...){if(!(i in arr)) continue;};

     9. 跳过不是正整数的i:if(String(Math.floor(Math.abs(Number(i)))) !== i) {//todo};

    10.code

      var arrData = [1.44, 2.5, 3.07, 8.19, 5, 76, 33];
      var sumOfSquares = 0;
        for (var i = 0, len = arrData.length;i < len; i++) {
          sumOfSquares += arrData[i] * arrData[i];
            console.log("i值为: " + i + " " + sumOfSquares)
        };

 

posted @ 2015-06-09 17:33  Coca-code  阅读(181)  评论(0编辑  收藏  举报