【废弃中】【WIP】JavaScript 数组

创建: 2018/01/22

更新: 2018/05/20 把此博文加入[javascript]分类, 原来忘记了

废弃: 2019/02/19 重构此篇。原文归入废弃

         增加【废弃中】标签与总体任务

TODO: 拆分内容到各个新博文并将此博文归档为废弃

是Object

 基础(摘自JavaScript 基础)
 传送门  http://www.cnblogs.com/lancgg/p/8281726.html
 生成
符号生成

var sample = [1, 2, 3 ,4];
 注意: 空白等于undefined, 也算长度length
  
var sample = [1, 2, , 4] // 1, 2, undefined, 4
sample.length; //4
 注意: 同一个数组的元素可以容纳任意类型
 构析函数  
var 变量名 = new Array(各项元素); //以 ,  隔开

例:
var odd = new Array(1, 3, 5, 7, 9);
var empty = new Array(); // []
var includeBlank = new Array(1, 2, , 4); //[1, 2, , 4]
var various = new Array(1, 'One', {one: 1, two: 2});

 

 只有一个非负整数参数时,表示长度

var sample = new Array(1);

 

 获取

  数组变量[索引]

var array = [1, 2, 3, 4];
array[0]; // 1
array[1]; //2

 获取不存在的时返回undefined

 增加与删除元素

 增加元素

var a = [];
a[2] = 1; // 直接指定索引添加,索引前不存在的全部是undefined
//在末尾添加用push
a.push(5);// [, , 1, 5]

 删除元素

delete(a[3]); //参数是要删除的数组及要删除元素的索引的式子

 

 

 length属性  存在的最大索引数+1
 指定数值的话,后面的内容全部删除
 sample = [1, 2, 3, 4]
 sample.length = 2 // [1, 2]
 确认是否存在某元素

 hasOwnProperty("...")

 参数是数组的索引 

var a = [1, 2, 3, , , , 7];
a.hasOwnProperty(1); //true
a.hasOwnProperty(3); //fasle
a.hasOwnProperty(5); //false
a.hasOwnProperty(6); //true

 

 疏松的数组

 包含undefined的数组

 undefined也占长度,但是for/in 下是不存在的

 确认是否存在某元素 hasOwnProperty()

 数组的方法
   数组是Array对象, 继承Array.prototype的全部属性
 Array.prototype方法一览

 变更类方法

 

copyWithin(target, begin, end)

ES6

 begin~end-1的元素复制到target位置

 

a = [0, 1, 2, 3, 4, 5, 6];
a.copyWithin(3, 0, 3); // 0 1 2 0 1 2 6

 

 fill(value, begin, end)

 ES6

begin~end-1的元素以value来替换 
 pop()

 获取末尾元素并从数组删除

 返回被删除元素

 push(data[, data2, ...])

 在末尾插入data

 返回新数组长度

 reverse()  把数组逆序
 shift()

 获取数组开头元素并从数组删除

 返回被删除元素

 unshift(data[, data2, ...])

 在数组开头增加元素

 返回新数组长度

a = [];
a.unshift(1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]

 

 sort([callback])  
 splice(index, howmany[, data, ...])

 index:位置

 howmany: 删除的数量(<=0时候从位置前面添加data元素, 不指定data就不动)

 data: 插入的元素,不指定就是删除

 

   
   

 访问类方法

 

   
   
   
   
   
   
   
   
   
   

 遍历类方法

 

   
   
   
   
   
   
   
   
   
   

 

   
   
   
   
   
   
   
   
   
   
   
   
   
   
 多次元数组
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 数组般的对象(Object) 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 ES6的数组与对象的新功能 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
posted @ 2018-01-22 10:10  懒虫哥哥  阅读(143)  评论(0编辑  收藏  举报