JavaScript随手记 – 数组

js 数组 array

  • 对于一个 3 项的数组,可以通过直接对不存在的索引赋值来扩充数组,如果中间有跨越,则跨越部分为空 empty。如果使用 for 循环遍历数组,空值会被跳过。
    var l = ['a', 1, 99.0];
    console.log(l)
    // (3) ["a", 1, 99]
    l[6] = 'six'
    console.log(l)
    // (7) ["a", 1, 99, empty × 3, "six"]
    for (let i in l) {
      console.log(i);
    }
    // 0
    // 1
    // 2
    // 6
    for (let i in l) {
      console.log(l[i]);
    }
    // a
    // 1
    // 99
    // six
    
  • 数组的 length 是可写的,这也就意味着可以通过修改它来达到删除末尾元素的效果
    var fruits = ['apple', 'pear', 'peach'];
    fruits.length = 2;
    console.log(fruits[2]); // undefined - 相当于删除了数组中的第三项
    
  • 追加和删除
    • push 末尾增加
    • pop 末尾删除
    • upshift 头部增加
    • shift 头部移除
  • 在一个位置重复删除元素
    var removedItems = vegetables.splice(pos, n);
    // this is how to remove items, n defines the number of items to be removed,
    // from that position(pos) onward to the end of array.
    
  • 复制数组
    var shallowCopy = fruits.slice(); // this is how to make a copy
    

发表评论

电子邮件地址不会被公开。 必填项已用*标注