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. pandas常用函数

    1. df.head(n): 显示数据前n行,不指定n,df.head则会显示所有的行 2. df.columns.values获取所有列索引的名称 3. df.column_name: 直接获取列c ...

  2. SVN windows内修改日志内容(错误解决)

    在我的电脑是windows 7,使用TortoiseSVN客户端,选中代码目录,点击右键,选择<显示日志> 显示日志信息 修改原来的日志信息(在需要修改的版本的日志中点击鼠标右键,显示如下 ...

  3. 设置一个div网页滚动时,使其固定在头部,当页面滚动到距离头部300px时,隐藏该div,另一个div在底部,此时显示;当页面滚动到起始位置时,头部div出现,底部div隐藏

    设置一个div网页滚动时,使其固定在头部,当页面滚动到距离头部300px时,隐藏该div,另一个div在底部,此时显示: 当页面滚动到起始位置时,头部div出现,底部div隐藏 前端代码: <! ...

  4. appium随笔

    目录结构如下: Test_edaike---page object设计思想 定位元素和脚本分离Images目录---用例失败截图case目录 eTestfastfood.py---定位app界面元素& ...

  5. tensorflow学习5----变量管理

    ---恢复内容开始--- 前面,读书笔记用加入正则化损失模型效果带来的提升要相对显著. 变量管理: 目的:当神经网络的结构更加复杂,参数更多的时候,就需要一个更好的方式来管理神经网络中的参数. 解决方 ...

  6. 集合运算—union(并集)、intersect(交集)和except(差集)

    一.集合运算的基本格式是: 集合查询1 <集合运算> 集合查询2 [order by ...] 二.集合运算符是对两个集合操作的,两个集合必须具有相同的列数,列具有相同的数据类型(至少能隐 ...

  7. 深度学习之循环神经网络RNN概述,双向LSTM实现字符识别

    深度学习之循环神经网络RNN概述,双向LSTM实现字符识别 2. RNN概述 Recurrent Neural Network - 循环神经网络,最早出现在20世纪80年代,主要是用于时序数据的预测和 ...

  8. hihoCoder #1037 : 数字三角形 (动态规划)

    题目链接:https://hihocoder.com/problemset/problem/1037# 问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋 ...

  9. JMX堆栈分析

    线程堆栈: 线程堆栈也称线程调用堆栈,是虚拟机中线程(包括锁)状态的一个瞬间快照,即系统在某一个时刻所有线程的运行状态,包括每一个线程的调用堆栈,锁的持有情况.虽然不同的虚拟机打印出来的格式有些不同, ...

  10. 前端框架VUE----模板字符串

    传统的JavaScript语言,输出模板通常是这样的写的. 1 $('#result').append( 2 'There are <b>' + basket.count + '</ ...