常用的方法

  1.push:向数组的末尾添加一个或更多元素,并返回新的长度。

        将要添加的元素作为方法的参数传递,这些元素将会自动添加到数组的末尾

var a=[1,2,3];
var r = a.push("1","2");
console.log(a,r);//[1,2,3,1,2] 5

  

  2.pop:删除并返回数组的最后一个元素,并将被删除的元素返回。

var a=[1,2,3];
var r = a.pop();
console.log(a,r);[1,2] 3

  3.unshift():向数组的开头添加一个或更多元素,并返回新的长度

  4.shift():删除并返回数组的第一个元素,并将被删除的元素返回

  5.slice:从某个已有的数组返回选定的元素

    - 该方法不会改变元素数组,而是将截取到的元素封装到一个新数组中返回

    - 参数:

      1.截取开始的位置的索引,包含开始索引

      2.截取结束的位置的索引,不包含结束索引

         - 第二个参数可以省略不写,此时会截取从开始索引往后的所有元素

         - 索引可以传递一个负值

            从后往前计算

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

  

  6.splice:删除元素,并向数组添加新元素。

    - 可以用于删除数组中的指定元素

    - 会影响到原数组,会将指定的元素从原数组中删除,并将被删除的元素作为返回值返回

    - 参数:

      第一个,表示删除的索引

      第二个,表示删除的数量

      第三个及以后的参数,

         传递一些新的元素,这些元素将会自动插入到开始位置索引前面(既替换)

            var arr = [1,2,3,4,5];
var r = arr.splice(1,3);
console.log(arr,r);//[1,5] [2,3,4]

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

      a.不会对原数组产生影响

            var arr = [1,2];
var arr2=[6,7];
       var arr3=[4,5];
       var r1=arr.concat(arr2,arr3,6,7);
var r=arr.concat(arr2);
console.log(r);//[1,2,6,7]

  8.join:将数组转换为一个字符串

      a.该方法不会对原数组产生影响

      b.可以制定一个字符串作为参数,用来作为数组中元素的连接符

        (1).如果不指定连接符,则默认使用,连接

  9.reverse:反转数组,会改变原数组

            var arr = [1,2];
arr.reverse()
console.log(arr);//[2,1]

  10.sort():对数组中的元素进行排序

    a.会影响原数组,默认按照unicode编码进行排序

    b.可以指定排序的规则

      在sort()添加一个回调函数,来指定排序规则,回调函数中需定义两个形参,浏览器会分别使用数组中的元素作为实参去调用回调函数

      浏览器会根据回调函数的返回值来决定元素的顺序

        (1).如果返回一个大于0的值,则元素会交换位置

        (2).如果返回一个小于0的值,则元素位置不变

        (3).如果返回一个0,则认为连个元素相等,也不交换位置

            var arr = [1,2,7,5,6,4,8,9];
arr.sort((a,b)=>a-b)
console.log(arr);//[1, 2, 4, 5, 6, 7, 8, 9]
arr.sort((a,b)=>b-a)
console.log(arr);//[9, 8, 7, 6, 5, 4, 2, 1]

  

      

JS基础_数组的方法的更多相关文章

  1. JS基础_数组的遍历

    遍历:将数组中所有的元素都取出来 1.for循环 var arr = ["1","2","3"]; for(let i=0;i<arr ...

  2. JS基础_使用工厂方法创建对象(了解下就行了,用的不多)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. JS基础_对象的方法

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. JS基础_数组简介

    内建对象 宿主对象 自定义对象 数组(Array) - 数组也是一个对象 - 它和我们普通的对象功能类似,也是用来存储一些值的 - 不同的是普通对象是使用字符串作为属性名的 数组是使用数字来作为索引来 ...

  5. JS基础_使用工厂方法创建对象

    创建一个对象 var obj={ name:"hhh", age:28, gender:"男", say:function(){ console.log(&qu ...

  6. 【JS学习】数组过滤方法的使用filter

    前言:本博客系列为学习后盾人js教程过程中的记录与产出,如果对你有帮助,欢迎关注,点赞,分享.不足之处也欢迎指正,作者会积极思考与改正. 使用效果: 可以返回参数函数为真的值 //情景:实现从stu数 ...

  7. JS中判断数组的方法

    JavaScript中检测对象的方法 1.typeof操作符 这种方法对于一些常用的类型来说那算是毫无压力,比如Function.String.Number.Undefined等,但是要是检测Arra ...

  8. js基础学习-数组

    let arr1 = [ {name: 1} ] let arr2 = [ {age: 23} ] let ages = [11, 22, 23] let newArr = arr1.concat(a ...

  9. js清空array数组的方法

    方式1,splice Js代码   ,,,}; ary.length = ; Java中会报错,编译通不过. 而JS中则可以,且将数组清空了,如 Js代码   var ary = [1,2,3,4]; ...

随机推荐

  1. 用Leangoo看板进行可视化的缺陷跟踪管理

    转自:https://www.leangoo.com/10464.html 缺陷管理通常关注如下几个方面: 1. 缺陷的处理速度 2. 缺陷处理的状态 3. 缺陷的分布 4. 缺陷产生的原因 使用Le ...

  2. Java Object对象中的wait,notify,notifyAll的理解

    wait,notify,notifyAll 是定义在Object类的实例方法,用于控制线程状态,在线程协作时,大家都会用到notify()或者notifyAll()方法,其中wait与notify是j ...

  3. String,StringBuffer,StringBuilder 的区别是什么

    Java中用于处理字符串常用的有三个类: 1.java.lang.String 2.java.lang.StringBuffer 3.java.lang.StrungBuilder 一.Java St ...

  4. 使用JS和PHP导出table表格

    把table表格的内容导出成excel 或者word等格式(简单容易不需要太多php) 导出需注意 1. 样式都在行间,导出excel表格会继承样式包括colspan.rowspan,非表格元素,样式 ...

  5. Delphi 建立非可视化对象

  6. 微信小程序开发(七)获取手机网络类型

    // succ.wxml <view>手机网络状态:{{netWorkType}}</view> // succ.js var app = getApp() Page({ da ...

  7. PAT Basic 1063 计算谱半径 (20 分)

    在数学中,矩阵的“谱半径”是指其特征值的模集合的上确界.换言之,对于给定的 n 个复数空间的特征值 { , },它们的模为实部与虚部的平方和的开方,而“谱半径”就是最大模. 现在给定一些复数空间的特征 ...

  8. Android使用WebView打包网页成app

    原生app的开发成本和网页相比相对较高,所以越来越多的app使用网页来作为界面,甚至完全将一个网站封装成app,可以提高开发速度,还能基本实现跨平台. 下面以Android为例,在ubuntu-14. ...

  9. ClassLoader源码分析与实例剖析

    在之前已经对类加载器做了不少实验了,这次主要是来分析一下ClassLoader的源码,当然主要是先从理解官方给它的注释开始,为之后自定义类加载器打好坚石的基础,下面开始: 而从类的层次结构来看也能感受 ...

  10. FirstWriting

    在很久很久以前,你拥有我我拥有你 <外面的世界> 在很久很久以前我就有搞一个类似博客的东西的想法,不过一直都没有尝试着搞-- 某天(10号左右吧)刷知乎看到github和hexo可以搭建博 ...