数组遍历、API、排序

一、数组的遍历

  1.遍历:一次访问数组中的每个元素

          for(var i=0;i

            console.log(arr[i]);//输出数组中的当前元素

          }

2.索引数组和关联数组/hash数组

索引数组:下标为数字的数组


关联数组/hash数组:下标不为数字的数组


          var zse=[];

          zse['name']='张三';

          zse['age']='18';

          zse['sex']='boy';

          console.log(zse);


关联数组没有length属性

关联数组不能用for遍历,要用for....in遍历

          for(var key in hash){

              //key代表关键字,即下标

              //hash代表数组名

          }

如:var wangzhesheng=[];

        wangzhesheng['sex']='女';

        wangzhesheng['age']='3岁';

        wangzhesheng['height']='151cm';

        console.log(wangzhesheng);

        for(var sb in wangzhesheng){

              console.log(wangzhesheng[sb]);

        }

二、数组API:

1.Storing

将数组中每个元素都转为字符串,再用逗号分隔: var str=String(arr);

如:var arr=[2,45,4,65,684,8,34];

var str=String(arr);//转换字符串

            console.log(str);

        2.join

将数组中每个元素都转为字符串,再用自定义下标连接每个元素:

var str=arr.join("自定义连接符")

强调:如果省略参数,默认等效于String

如:var arr=[2,45,4,65,684,8,34];

              var str=arr.join('-');

              console.log(str);

        3.concat

拼接

          var arr=[2,45,4,65,684,8,34];

          var arr2=['+','-','*','/'];

          var str=arr.concat(arr2);

          console.log(str)

注:join和concat的区别

join适用于把字母拼接为单词,把单词拼接为句子,拼出来的是字符串

concat是给数组后面拼接新元素,或把两个数组拼接,拼出的还是数组

        4.slice

截取

如:var arr=[2,45,4,65,684,8,34];

var str=arr.slice(1,5);//含头不含尾

var str=arr.slice(1);//如果省略第二个参数默认从第一个参数开始截取到末尾

var str=arr.slice();//如果两个参数都省略相当于复制原字符串

var str=arr.slice(-4,-2);//支持负数参数,小数在前,大数在后

        5.splice

删除插入替换

1).删除

            var arr=[2,45,4,65,684,8,34];

var str=arr.splice(1,3);//表示从下标为1的位置处开始删除3个

            console.log(str);

            console.log(arr);

2).插入

            var arr=[2,45,4,65,684,8,34];

var str=arr.splice(1,0,'ai','he');//从下标为1的位置处开始删除0个并插入新元素

            console.log(str);

            console.log(arr);

3).替换

            var arr=[2,45,4,65,684,8,34];

var str=arr.splice(1,2,'ai','he');//从下标为1的位置处开始删除2个并替换新元素

            console.log(str);

            console.log(arr);


        6.reverse

翻转

          var arr=[1,2,3,4,5];

          var str=arr.reverse();

console.log(str);//输出[5,4,3,2,1]

...还有几种,明天讲

三、数组排序

        1.arr.sort();

          var arr=[2,4,3,5,1];

  var str=arr.sort();

console.log(str);//输出[1,2,3,4,5]


2.像以下这种函数用arr.sort无法实现排序,这时候就需要用到比较器函数

  var arr=[1,12,22,13,23,33,3,2];

          function cmp(a,b){

//return a-b;//升序排列

return b-a;//降序排列

  }

  console.log(arr.sort(cmp));

!

数组遍历、API、排序_第1张图片
图片发自App

End!

你可能感兴趣的:(数组遍历、API、排序)