1.创建数组的几种方法
            //a).通过new来创建数组,new可以省略
var arr=new Array();
var arr=Array();
//b). .通过new来创建数组,并且赋值
var arr=new Array(1,2,3);
//c).中括号直接创建
var arr=[]; //常用
//d).中括号直接创建 ,并且赋值
var arr=[1,2,3]

 2. 数组中的方法:

//1.push() :给数组的末尾添加元素。格式: 数组.push(参数, 参数...);
var arr=['a','b','c'];
var temp=arr.push('d');
console.log(arr); //'a','b','c','d' ,原数组已改变
console.log(temp); //4, 返回的是添加元素后数组的长度

  

//2.pop()  : 格式: 数组.pop()  ,删除数组最后一个元素
var arr=['a','b','c'];
var temp=arr.pop();
console.log(arr); //'a','b' ,原数组已改变
console.log(temp); //c, 返回的是去掉的元素

  

//3.shift():   格式: 数组.shift()	删除数组的第一个元素
var arr=['a','b','c'];
var temp=arr.shift();
console.log(arr); //'b','c' ,原数组已改变
console.log(temp); //a, 返回的是去掉的元素

  

  

//4.unshift(参数, 参数...):格式:数组.unshift()    给数组 首位添加元素
    var arr=['a','b','c'];
var temp=arr.unshift('d','e');
console.log(arr); //'a','b','c','d','e' ,原数组已改变
console.log(temp); //5, 返回的是添加元素后数组的长度

  

//     5.concat(): 数组的合并 ,  格式: 数组1.concat(数组2);
var arr1=['a','b'];
var arr2=['c','d'];
var temp=arr1.concat(arr2);
console.log(arr1); //'a','b' ,原数组arr1不变
console.log(arr2); //'c','d' ,原数组arr2不变
console.log(temp); //"a,b,c,d" 返回的是新数组

  

//     6.slice(): 数组的截取 ,  格式: 数组.slice(start, end);
var arr=['a','b','c','d','e','f'];
var temp=arr.slice(2,4);
console.log(arr); // "a,b,c,d,e,f" ,原数组arr不变
console.log(temp); //"c,d" ,返回的是截取下来的新数组

  

//    7.splice():
// 7.1数组的删除功能:
var arr=['a','b','c','d','e','f'];
var temp=arr.splice(2,4);
console.log(arr); // "a,b" ,原数组arr已变
console.log(temp); //"c,d,e,f" ,返回的是删掉的数组
// 7.2 数组的插入功能:
var arr=['a','b','c','d','e','f'];
var temp=arr.splice(2,0,'g','h');
console.log(arr); // "a,b,g,h,c,d,e,f" ,原数组arr已变 ,无返回数组。
// 7.3 数组的替换功能:
var arr=['a','b','c','d','e','f'];
var temp=arr.splice(2,1,'g');
console.log(arr); // "a,b,g,d,e,f" ,原数组arr已变 。
console.log(temp); // "c ,返回的是替换掉的元素。

  

//     8. reverse()  数组的翻转:
var arr=['a','b','c','d','e','f'];
var temp=arr.reverse();
console.log(arr); // "f,e,d,c,b,a" ,原数组arr已变 。
console.log(temp); // "f,e,d,c,b,a" ,返回的是翻转后的数组。

  

//     9. join()  表示数组转换成字符串:
var arr=['a','b','c','d','e','f'];
var temp=arr.join('-');
console.log(arr); // "a,b,c,d,e,f" ,原数组arr不变 。
console.log(temp); // "a-b-c-d-e-f" ,这里以‘-’进行分割,返回的是分割 后的数组。

  

//     10. split()  字符串转换成数组:
var str='abc-def-ghi-jk';
var temp=str.split('-');
console.log(str); // "abc-def-ghi-jk" ,原字符串不变 。
console.log(temp); // "abc,def,ghi,jk" ,这里以‘-’进行分割,返回的是分割 后的数组。

  

//     11. sort()  数组的翻转:
//字符进行排序
var arr1=['f','e','d','c','b','a'];
var temp1=arr.sort();
console.log(arr1); // "a,b,c,d,e,f" ,原数组arr已变 。
console.log(temp1); // "a,b,c,d,e,f" ,返回的是从小到大排序的数组。
//数字进行排序
var arr2=[5,4,3,2,1,0];
var temp2=arr2.sort();
console.log(arr2); // "0,1,2,3,4,5" ,原数组arr已变 。
console.log(temp2); // "0,1,2,3,4,5" ,返回的是从小到大排序的数组。缺点:只能排序一位数的数组 var arr3=[22,34,1,4,0,25]
function compareArr(val1,val2){
if(val1>val2){
return 1;
}else if(val1<val2){
return -1; }else{
return 0;
}
}
console.log(arr3.sort(compareArr)); //‘0,1,4,22,25,34’ ,结合compareArr()方法可以排序任意位数的数组

  

//       12.indexOf():  格式: 数组.indexOf(要查找的元素, 开始查找的下标);
var arr=['a','e','c','d','e','f'];
console.log(arr.indexOf('e',2)); //4 返回所需要查找的元素的下标
console.log(arr.indexOf('c')); //2 返回所需要查找的元素的下标

  

//       13.forEach():遍历数组      格式: 数组.forEach(function(item, index, array){});
var arr=['a','e','c','d','e','f']; arr.forEach(function(item, index, array){
console.log(item); //a/b/c/d/e/f 返回每一个元素
console.log(index); //返回每一个元素对应的下标
console.log(array); //返回整个数组
})

  

//       14.map():遍历数组      格式: 数组.map(function(value,key){});
var arr=[1,2,3,4,56];
var arr2= arr.map(function(value,key){
console.log(value); //a/b/c/d/e/f 返回每一个元素
console.log(key); //返回每一个元素对应的下标
return value*2 //可以修改每个元素的值,返回一个新数组
}) console.log(arr); //1,2,3,4,56
console.log(arr2); //2,4,6,8,112

  

  

JavaScript中数组中的方法:push()、pop()、shift()、unshift()、slice()、splice()、reverse()、join()、split()、concat()、indexOf()、forEach()、map()、的更多相关文章

  1. 数组方法push() pop() shift() unshift() splice() sort() reverse() contact()浅拷贝 slice()原数组拷贝

    push() pop() shift() unshift() splice() sort() reverse() 参考资料:https://wangdoc.com/javascript/stdlib/ ...

  2. Perl 数组应用详解(push, pop, shift, unshift)

    Perl的数组操作有四大常用函数: push:从数组的末尾加入元素.pop :从数组的末尾取出元素 shift: 从数组的开头取出元素unshift:从数组的开头加入元素 1.push #!/usr/ ...

  3. js数组方法push pop shift unshift的返回值

    push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度. pop() 方法用于删除并返回数组的最后一个元素. unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度. s ...

  4. js 的数组怎么push一个对象. Js数组的操作push,pop,shift,unshift JavaScrip

    push()函数用于向当前数组的添加一个或多个元素,并返回新的数组长度.新的元素将会依次添加到数组的末尾. 该函数属于Array对象,所有主流浏览器均支持该函数. 语法 array.push( ite ...

  5. Js数组的操作push,pop,shift,unshift等方法详细介绍

    js中针对数组操作的方法还是比较多的,今天突然想到来总结一下,也算是温故而知新吧.不过不会针对每个方法进行讲解,我只是选择其中的一些来讲. 首 先来讲一下push和pop方法,这两个方法只会对数组从尾 ...

  6. js数组的操作push,pop,shift,unshift

    push(args)可以每次压入多个元素,并返回更新后的数组长度. var oldArr=[1,2,3]; alert(oldArr.push(4,[5,6]))–>5(这里只会将[5,6]当做 ...

  7. Vue push() pop() shift() unshift() splice() sort() reverse() ...

    Vue 变异方法 push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度. pop() 方法用于删除并返回数组的最后一个元素. shift() 方法用于把数组的第一个元素从其中删除,并返回 ...

  8. js push(),pop(),shift(),unshift()

    以前没有太在意这些,这几天看<Javascript 设计模式与开发实践>(不得不说这是一本好书) 发现总是会用到这几个函数,可是有什么区别呢?? 简单来说是两套东西(数据结构时老师详细的讲 ...

  9. Js~数组的操作push,pop,shift,unshift

    说几个概念: 队列:先进先出堆栈:先进后出 shift:从集合中把第一个元素删除,返回这个元素的值pop:从集合中把最后一个元素删除,返回这个元素的值 unshift:在集合开头添加一个或者多个元素, ...

  10. JavaScript从数组中删除指定值元素的方法

    本文实例讲述了JavaScript从数组中删除指定值元素的方法.分享给大家供大家参考.具体分析如下: 下面的代码使用了两种方式删除数组的元素,第一种定义一个单独的函数,第二种为Array对象定义了一个 ...

随机推荐

  1. (已解决)在linux的虚拟机上安装vmware tools(实现windows与虚拟机之间的文件交互复制粘贴)

    Linux下需要安装VMware Tools工具来实现主机和虚拟机直接文件复制粘贴功能,安装方法如下: ①点击虚拟机VM菜单栏--虚拟机--安装VMware Tools. ②然后RedHat系统中弹出 ...

  2. Selenium基础知识(三)元素判断

    一.由于有些页面加载完后,某些元素还没有加载,这样就会导致异常,脚本稳定性变差 为了解决这个问题,selenium提供了WebDriverWait以及implicitly_wait()等待 WebDr ...

  3. php 下载完成后删除文件

    最近遇到一个需求:下载用户上传的图片,但是图片不断更新. 1.需要将图片从图片服务器下载到网站后台服务器 2.压缩文件夹生成zip压缩包 3.下载压缩包 4.删除压缩包和临时文件夹 其中遇到了一个问题 ...

  4. v1版本

    <?php use yii\helpers\Html; use yii\helpers\Url; use yii\widgets\DetailView; use yii\grid\GridVie ...

  5. hdu4670 树分治

    这题说的给了一颗树 然后树上有一些整数值,分别由他给的那30个素数组成,有多少条路径的路径上的点的乘积为立方数, 把每个数分解成相应的素数模3后的值,然后压缩为一个3进制的数 然后进行树的分支 #in ...

  6. Sitecore CMS中更改项目的模板

    如何在Sitecore CMS中创建项目后更改项目的模板. 在创建项目时选择了错误的模板,或者创建了新模板并将现有项目更新为新模板时,这非常有用.   警告! 更改模板时要小心.如果原始模板具有不在新 ...

  7. arc 092D Two Sequences

    题意: 给出两个长度N相同的整数序列A和B,有N^2种方式从A中选择一个数Ai,从B中选择一个数Bj,让两个数相加,求这N^2个数的XOR,即异或. 思路: 暴力的求显然是会超时的,因为是异或,就考虑 ...

  8. MapReduce的map个数调节 与 Hadoop的FileInputFormat的任务切分原理

    在对日志等大表数据进行处理的时候需要人为地设置任务的map数,防止因map数过小导致集群资源被耗光.可根据大表的数据量大小设置每个split的大小. 例如设置每个split为500M: set map ...

  9. Linux基础命令---文本格式转换fmt

    fmt 将指定文件的内容,按照指定的格式重新排版,结果送到标准输出. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora. 1.语法     ...

  10. eclipse中的tomca的编辑页面server location灰色

    clipse中tomcat service设置 选择window ----show view---services可以看到服务的面板 双击tomcat进入配置界面Service Locations(S ...