数组的原生方法

数组在JavaScript中的应用十分之频繁,所以我做了一些笔记,方便以后看看

push()

定义和用法

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
注意: 新元素将添加在数组的末尾。
注意: 此方法改变数组的长度。

push()方法是在数组的末尾添加一个数,并返回修改数组后的长度

            var arr=[1,2,3];
            var arr1=arr.push(4);
            alert(arr);//1,2,3,4
            alert(arr1);//4 返回的length为4
pop()

pop()方法是在数组的末尾删除一个数,减少length的长度,并返回移除的项

            var arr=[2,3,5];
            var arr1=arr.pop();//5 返回移除的项
            alert(arr);//2,3
            alert(arr1);//5
shift()

shift()的作用是删除数组的第一项,并且返回被移除的数

            var arr=[1,2,3];
            var arr1=arr.shift();
            alert(arr);//2,3 数组的第一项被移除
            alert(arr1);//1 返回被删除的数
unshift()

unshift()是在数组的头部添加一项,返回的是数组的长度。

            var arr = [1, 2, 3];
            var arr1 = arr.unshift(4);
            alert(arr); // 4,1,2,3 向数组的头部添加了一项
            alert(arr1); //4  返回的是数组的length
sort()

定义和用法

sort() 方法用于对数组的元素进行排序。 排序顺序可以是字母或数字,并按升序或降序。 默认排序顺序为按字母升序。
注意:当数字是按字母顺序排列时”40”将排在”5”前面。 使用数字排序,你必须通过一个函数作为参数来调用。
函数指定数字是按照升序还是降序排列。

            var arr=['t','a','b','h','j'];
            var arr1=[45,12,3,7,67];
            alert(arr.sort());//a,b,h,j,t //字母按顺序排序
            alert(arr1.sort());//12,3,45,67,7 //数组按第一位大小进行排序

那么如何进行数字之间的排序呢?

            var arr1 = [45, 12, 3, 7, 67];
            var arr2 = arr1.sort(function(n1, n2) {
                if(n1 < n2) {
                    return -1;
                } else if(n1 > n2) {
                    return 1;
                } else {
                    return 0;
                }
            });
            alert(arr2);//3,7,12,45,67 

还有一种更加简单的写法,既然返回的数是负数,0,正数,那么将两个数相减也可以得到同样的效果。

            var arr1 = [45, 12, 3, 7, 67];
            var arr2 = arr1.sort(function(n1, n2) {
                return n1-n2;//如果n1<n2那么就返回负数,n1=n2就返回0,n1>n2便返回正数。
            });
            alert(arr2);//3,7,12,45,67 
reverse()

reverse() 方法用于颠倒数组中元素的顺序。

            var arr=[1,2,3,4,5];
            alert(arr.reverse());//5,4,3,2,1
concat()

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

            var arr1=[1,2];
            var arr2=[3];
            var arr3=[4,5];
            alert(arr1.concat(arr2,arr3));//1,2,3,4,5
slice()

slice() 方法可从已有的数组中返回选定的元素,这个方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。

            var arr=[1,2,3,4,5];
            alert(arr.slice(2,4));//3,4

slice() 方法不会改变原始数组。

splice()

splice() 方法用于插入、删除或替换数组的元素,这个方法会改变原始数组。返回值是被移除的数。

            var arr=[1,2,3,4,5];
            arr.splice(2,2,8);//第一个参数是从这个位置开始移除,第二个参数是移除多少个,如果设置为0就是不移除,第三个参数就是要插入的数,也可以不填,就是不插入
            alert(arr);//1,2,8,5
indexOf()和 lastIndexOf()

indexOf()用于查询数组里面的项,可以接收两个参数,第一个是要查询的项,第二个是从哪个位置开始查询(可选)

            var arr=[1,2,3,4,5];
            alert(arr.indexOf(3));//2 也就是3这个项目出现的位置是第2位,

lastIndexOf()就是从后往前找,和indexOf()差不多,都可以接收俩个参数

            var arr=[1,2,3,4,5,6,7,8];
            alert(arr.lastIndexOf(3));//2 从末尾开始查找 

两个方法都会返回项的位置,如果找不到就会返回-1。

join(参数)

这个方法能把数组变成字符串,只接受一个参数或者不接受参数,也就是分隔符。

            var arr=[2,3,4];
            var arr1=arr.join('-');//参数要用括号包裹
            var arr2=arr.join();//没有参数
            alert(arr1);//2-3-4
            alert(arr2);//2,3,4  这是一个字符串
            aler(arr);//2,3,4 原数组不受影响,这是个数组。

以上是我学习的笔记,还有一些数组的原生方法没有补充,就先这样吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值