Javascript 数组

JS  Array

具有多个值的变量叫数组,数组是集合

Array是js原生底层的一种方法。
实例化数组:

var a=new Array( )

 一. Array里面的参数:
  1. 带一个参数;
  2. 两个参数或者两个参数以上。
二. Array里面的方法:
 1.截断数组 slice   splice 
1)slice:
语法:arrayObject.slice(start,end)
从哪个索引位开始到后边索引位结束(不包含后边的索引位)  且不影响原数组
注意:可使用负值从数组的尾部选取元素。如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。
 
2)splice:
语法:arrayObject.splice(index,howmany)

index为必需参数。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组元素的下标,必须是数字;

howmany必需。规定应该删除多少元素。必须是数字,但可以是 "0"。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。

从那个索引为开始,截取几个长度,并返回一个新数组,会影响原数组。

2.追加元素 push unshift

1)push():向数组的末尾添加一个或更多元素,并返回新的长度;
2)unshift():向数组的开头添加一个或更多元素,并返回新的长度。
3.concat  sort
1)concat:

拼接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

2)sort:

快速排序;

如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,即按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

  • 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
  • 若 a 等于 b,则返回 0。
  • 若 a 大于 b,则返回一个大于 0 的值。
例题: sort() 操作实现小到大

a.sort(function (num1,num2){

     return num2-num1;

 });

console.log(a);
  1. Join
join() 方法用于把数组中的所有元素放入一个字符串;元素是通过指定的分隔符进行分隔的。
  1. split:
       字符串转化为数组,里面参数是字符串里面的特有符号。
  1. pop:

删除最后一个元素,并将删除的元素返回。

6. forEach()  遍历数组   for( in ) 

   1)
 a.forEach(function (value,index,arr){

  console.log(value+"/"+index+"/"+arr);

 });
2)

 for( var key in a)

 {

     console.log(a[key]);

 }
7. map 映射  reduce  累加
1)map 映射

var c=a.map(function (value,index){
    return value+index;
 });
 console.log(c);

2)reduce 累加
 var b=a.reduce(function (x,y){
     console.log(x+"/"+y);
     return x+y;
 });
 console.log(b);

 

例题:求1-100的和:
 var b=[ ];
 for(var i=1;i<=100;i++)
 {
     b[i-1]=i;
 }
 var c= b.reduce(function (x,y){
     return x+y;
 });
 console.log(c);

用reduce实现map的方法:

    1. var a=[2,5,2,4,3,7,6,11];
       var c=a.map(function (x){
       return x+x;
       });
       console.log(c);
      2) var t=[ ];
       var count=0;
       var m=a.reduce(function (x,y){
       if(count==0)t.push(a[count]+a[count]);
       count++;
       t.push(y+y);
       });
       console.log(t);

三.Array属性:
length: length 属性可设置或返回数组中元素的数目。

1.数组的 length 属性总是比数组中定义的最后一个元素的下标大 1,属性 length 声明了数组中的元素的个数。

2.数组的 length 属性在用构造函数 Array() 创建数组时被初始化。给数组添加新元素时,如果必要,将更新 length 的值。

3.设置 length 属性可改变数组的大小。如果设置的值比其当前值小,数组将被截断,其尾部的元素将丢失。如果设置的值比它的当前值大,数组将增大,新的元素被添加到数组的尾部,它们的值为 undefined。

 

 

 

 

 
 
 

 

 
 
 
 
 
 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值