js数组常用方法

//1、concat:在现有数组后面追加数组,并返回新数组,不影响现有数组
//只能用于连接数组或字符串
         var a = [ 1, 2, 3];
         var b = [ 'a', 'b', 'c'];
         var c = a.concat(b);
        console.log( "1、"+c);                                 //1,2,3,a,b,c
        console.log(a);                                      //[1,2,3]
//数组连接字符串,会追加新元素
        console.log(a.concat( 'abc'));                //[1,2,3,"abc"]
//字符串连接数组时,字符串会跟数组首元素拼接成新元素
        console.log( 'abc'.concat(a));                //abc1,2,3

//2、join:用指定间隔符连起来,把数组转为字符串
         var a = [ 'abc', '123', 'haha'];
        console.log( "2、"+a.join( '--'));      //abc--123--haha
        console.log(a.join( ","));                //abc,123,haha      相当于a.toString()
        console.log(a.toString());
//join用于一维数组,对于数组中还有数组的数组,要用toString()
         var b = [ 1, 2, 3,[ 'a', 'b', 'c']];
        console.log(b.join( '*'));                //1*2*3*a,b,c
        console.log(b.toString());               //1,2,3,a,b,c

//3、pop:删除数组最后一个元素,并返回该元素,如果数组为空,则返回undefined
         var a = [ 'aa', 'bb', 'cc'];
        console.log( "3、"+a.pop());               //cc
        console.log(a);                                      //["aa","bb"]
         var b = [];
        console.log(b.pop());                                //undefined

//4、push:在数组后面添加数组,并返回数组新长度
         var a = [ "aa", "bb", "cc"];
        console.log( "4、"+a.push( "dd"));      //4
        console.log(a);                                              //["aa","bb","cc","dd"]
        a.push([ 1, 2, 3]);
        console.log(a);

//5、sort:数组排序,默认是字符串比较
         var a = [ 1, 11, 2, 3, 4, 23, 5];
        console.log( "5、"+a.sort());              //1,11,2,23,3,4,5
        a.sort( function(a,b){
                 return a-b;
        });
        console.log(a);                                      //[1,2,3,4,5,11,23]

//6、reverse:反转元素,并不进行排序
         var a = [ 11, 3, 5, 66, 44];
        console.log( "6、"+a.reverse());               //44,66,5,3,11

//7、shift:删除数组第一个元素,并返回该元素,数组为空时,返回undefined
         var a = [ "aa", "bb", "cc"];
        console.log( "7、"+a.shift());                         //aa
        console.log(a);                                              //["bb","cc"]

//8、unshift:往数组最前面添加元素,并返回数组新长度
         var a = [ "aa", "bb", "cc"];
        console.log( "8、"+a.unshift( "123"));                      //4
        console.log(a);                                                              //["123","aa","bb","cc"]

//9、slice:返回数组片段
         var a = [ 'a', 'b', 'c', 'd', 'e', 'f', 'g'];
        console.log( "9、"+a.slice( 1, 2));                      //b
        console.log(a.slice( 2));                                         //['c','d','e','f','g']
        console.log(a.slice(- 4));                                        //['d','e','f','g']
        console.log(a.slice(- 2,- 6));                                 //[]

//10、splice:从数组删除某片段的元素,并返回删除的元素
         var a = [ 'a', 'b', 'c', 'd', 'e', 'f', 'g'];
//①删除:arr.splice(起点,长度)
        console.log( "10、"+a.splice( 2, 3));                //c,d,e
        console.log(a);                                                      //['a','b','f','g']
//②插入:arr.splice(起点,长度,元素....)      ,插入起始经历了两个步骤:1,删除 2,插入
         //这里表示从下标为2的元素开始,删除0个元素,插入1,2,3
        console.log(a.splice( 2, 0, 1, 2, 3));                        //[]
        console.log(a);                                                      //['a','b',1,2,3,'f','g']
//③替换:arr.splice(起点,长度,元素....)
         //这里表示从下标为0的元素开始,删除3个元素,然后插入m,n
        console.log(a.splice( 0, 3, 'm', 'n'));                      //['a','b',1]
        console.log(a);                                          //['m','n',2,3,'f','g']
        
//11、toString:把数组转为字符串,不只数组,所有对象均可以使用该方法
         var a = [ 1, 2, 3,[ 'a', 'b', 'c'], 4, 5];
        console.log( "11、"+a.toString());                        
//也可以对数组的指定元素进行进制转换
        console.log(a[ 5].toString( 2));                  
//12、toLocaleString:返回本地格式字符串,主要用在Date对象上
         var date = new Date();
        console.log(date.toString());                       
        console.log(date.toLocaleString());                 
        console.log(date.toLocaleDateString());             
//扩展:
//1、数组的拷贝
         var arr = [ 1, 2, 3, 4];
        console.log(arr.slice( 0));               //返回数组的拷贝数组,注意是一个新的数组,不是指向
        console.log(arr.concat());               //返回数组的拷贝数组,注意是一个新的数组,不是指向
        
//2、length属性
         //Length属性表示数组的长度,即其中元素的个数。因为数组的索引总是由0开始,所以一个数组的上下限分别是:0和length-1。
         //和其他大多数语言不同的是,JavaScript数组的length属性是可变的,这一点需要特别注意。
         //当length属性被设置得更大时,整个数组的状态事实上不会发生变化,仅仅是length属性变大;当length属性被设置得比原来小时,
         //则原先数组中索引大于或等于length的元素的值全部被丢失。
        
//3、prototype属性
         //返回对象类型原型的引用。prototype属性是object共有的。
         //objectName.prototype
         //说明:用prototype属性提供对象的类的一组基本功能。对象的新实例"继承"赋予该对象原型的操作。
         function array_max(){
                 var i,max = this[ 0];
                 for(i= 0;i< this.length;i++){
                         if(max < this[i])
                                max = this[i];
                }
                 return max;
        }
        Array.prototype.max = array_max;
         var arr = new Array( 2, 3, 55, 4, 88, 19);
        console.log(arr.max());                                      //88
        
//4、constructor属性
         //表示创建对象的函数。
         //object.constructor                //object是对象或函数的名称
         //说明:constructor属性是所有具有protorype的对象的成员。
         //它们包含除Global和Math对象以外的所有JS固有对象。
         //constructor属性保存了对构造特定对象实例的函数的引用。
         var str = new String( "hi");
        console.log(str.constructor);                        //function String(){[native code]}
         var arr = new Array( 1, 2, 3);
        console.log(arr.constructor);                        //function Array(){[native code]}

//删除数组中指定的元素
function del(val, arr)
{
             //检测参数
             if (arr == null && arr.constructor != Array) {
                 return [];
            }

             var newarr = []; //不存在的保存到新数组中
             for ( var i = 0; i < arr.length; i++) {
                 if (arr[i] != val)
                            newarr.push(arr[i]);
            }
             return newarr;
}
alert(del( 2, [ 1, 2, 3, 4, 5, 2]));
基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip基于MATLAB实现旅行推销员问题(TSP)的代码+项目说明(课程大作业)+测试数据.zip 【备注】 1、该资源内项目代码百分百可运行,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值