数组的方法
arr.push()
arr.unshift()
arr.pop()
arr.shift()
arr.slice()
arr.splice()
arr.join()
arr.find()
arr.indexOf()
arr.findIndex()
arr.reverse()

8.arr.push()

理解:往数组最后添加一个或几个元素,返回产生新数组的长度。
使用:arr.push()
参数:往数组最后面添加的元素
返回值:添加之后的原数组的长度
原数组:改变

    let arr1 = ["a","b","c","d"];
let res1 = arr1.push('ddd'); console.log('原数组',arr1); //["a","b","c","d","ddd]
console.log('返回值',res1); //

9.arr.unshift()

理解:往数组最前面添加一个或多个元素,返回产生新数组的长度。
使用:arr.unshift()
参数:往数组最前面添加的元素
返回值:添加之后的原数组的长度
原数组:改变

9.arr.pop()

理解:将数组最后一个元素删除,返回删除的元素。
使用:arr.pop()
参数:没有参数
返回值:删除最后一个元素的原数组
原数组:改变

    let arr1 = ["a","b","c","d"];
let res1 = arr1.pop(); console.log('原数组',arr1); //["a","b","c"]
console.log('返回值',res1); //d

10.arr.shift()

理解:往数组最前面添加一个或多个元素,返回产生新数组的长度。
使用:arr.shift()
参数:没有参数
返回值:删除最前一个元素的原数组
原数组:改变

11.arr.slice()

理解:截取数组中的元素,返回截取的元素组成的数组。
使用:arr.slice()
参数:多种情况
返回值:截取出来的元素组成的新数组
原数组:不改变原数组。

参数情况:

有一个参数:从指定的位置开始截取到最后一位元素,包括指定的位置的元素。
有一个参数,参数是负数:从指定的位置开始截取到最后一位元素,包括指定的位置的元素。开始的位置是arr的长度加负数。
负数绝对值大于arr的长度,则从0开始截取。
有两个参数:从指定的位置开始截取到指定的位置,包括起始的指定位置的元素,不包括结束的指定位置的元素。

    let arr1 = [0,1,2,3,4,5];
let res1 = arr1.slice(); //没有参数
let res2 = arr1.slice(2); //一个参数
let res3 = arr1.slice(1,2); //两个参数,第一中情况,第一个参数比第二个参数大
let res4 = arr1.slice(2,1); //两个参数,第二中情况,第一个参数比第二个参数小
let res5 = arr1.slice(2,-1); //两个参数,第二中情况,参数是负数 console.log('原字符串',arr1); //[0, 1, 2, 3, 4,5]
console.log(res1); //[0, 1, 2, 3, 4,5]
console.log(res2); //[2, 3, 4]
console.log(res3); //[1]
console.log(res4); //[]
console.log(res5); //[2, 3,4]

12.arr.splice()

理解:删除或添加元素,返回删除的元素组成的数组。
使用:arr.splice()
参数:多种情况
返回值:截取的元素组成的新数组
原数组:改变,截取之后剩余的元素组成的数组

参数情况:

无参数:不删除元素。
有一个参数:从指定的位置开始删除到最后一位元素,包括指定的位置的元素。
有两个参数:从指定的位置开始删除,删除指定的个数,包括起始的指定位置的元素。
三个以上参数:从指定的位置开始删除,删除指定的个数,包括起始的指定位置的元素,并且添加第三位以后的元素。
三个以上参数,第二个参数是0:从指定的位置之前添加第三位以后的元素。

    let arr1 = [0,1,2,3,4,5];
let res1 = arr1.splice(); //没有参数----升序 let arr2 = [0,1,2,3,4,5];
let res2 = arr2.splice(2); //1个参数 let arr3 = [0,1,2,3,4,5];
let res3 = arr3.splice(2,1); let arr4 = [0,1,2,3,4,5];
let res4 = arr4.splice(2,1,'aa','bb'); console.log('原数组',arr1); //[0, 1, 2, 3, 4, 5]
console.log('返回值',res1); //[] console.log('原数组',arr2); //[0, 1]
console.log('返回值',res2); //[2, 3, 4, 5] console.log('原数组',arr3); //[0, 1, 3, 4, 5]
console.log('返回值',res3); //[2] console.log('原数组',arr4); //[0, 1, "aa", "bb", 3, 4, 5]
console.log('返回值',res4); //[2]

13.arr.concat()

理解:合并数值。
使用:arr.concat()
参数:需要合并的数组或元素
返回值:合并之后的新数组
原数组:不改变

    let arr1 = ["a","b","c","d"];
let res1 = arr1.concat([1,2,3]);
let res2 = arr1.concat('ddd'); console.log('原数组',arr1); //["a", "b", "c", "d"]
console.log('返回值',res1); //["a", "b", "c", "d", 1, 2, 3]
console.log('返回值',res2); //["a", "b", "c", "d","ddd"]

14.arr.join()

理解:将数值转出字符串,没有参数,默认用逗号隔开。
使用:arr.join(),arr.join(',')
参数:没有参数,或一个参数
返回值:返回字符。没有参数,默认用逗号隔开;有参数,用参数隔开
原数组:不改变

    let arr1 = ["a","b","c","d"];
let res1 = arr1.join(); //没有参数
let res2 = arr1.join('*'); //有参数 console.log('原数组',arr1); //["a", "b", "c", "d"]
console.log('返回值',res1); //a,b,c,d
console.log('返回值',res2); //a*b*c*d

15.arr.find()

理解:循环数组,每循环一次,执行一次数组,当数组中的元素满足回调函数的条件时,停止循环,并返回该元素。
使用:arr.find()
参数:
返回值:找到满足回调函数条件的元素,没有则undefined
原数组:不改变

    let arr1 = [0,1,2,3,4,5];

    let res1 = arr1.find((item,i,arr)=>{
console.log(item,i,arr); //0 0 (6) [0, 1, 2, 3, 4, 5]
return item > 2
}) console.log('原数组',arr1); // [0,1,2,3,4,5]
console.log('返回值',res1); //

16.arr.indexOf()

理解:查找数组中指定的元素的位置,没有则返回-1。
使用:arr.indexOf()
参数:指定的元素
返回值:指定的元素的位置,没有则返回-1。
原数组:不改变

    let arr1 = [0,1,2,3,4,5];

    let res1 = arr1.indexOf(4);
let res2 = arr1.indexOf(9); console.log('原数组',arr1); // [0,1,2,3,4,5]
console.log('返回值',res1); //
console.log('返回值',res2); // -1

17.arr.findIndex()

理解:循环数组,每循环一次,执行一次数组,当数组中的元素满足回调函数的条件时,停止循环,返回这个元素的位置,没有则返回-1。
使用:arr.findIndex()
参数:指定的元素
返回值:指定的元素的位置,没有则返回-1。
原数组:不改变

   let arr1 = [0,1,2,3,4,5];

    let res1 = arr1.find((item,i,arr)=>{
console.log(item,i,arr); //0 0 (6) [0, 1, 2, 3, 4, 5]
return item >2
}) console.log('原数组',arr1); // [0,1,2,3,4,5]
console.log('返回值',res1); //

18.arr.reverse()

理解:数组元素倒置
使用:arr.reverse()
参数:
返回值:倒置之后的数组
原数组:改变

    let arr1 = ["a","b","c","d"];
let res1 = arr1.reverse(); //没有参数 console.log('原数组',arr1); //["d", "c", "b", "a"]
console.log('返回值',res1); //["d", "c", "b", "a"]

数组Array的API2的更多相关文章

  1. Java ArrayList和Vector、LinkedList与ArrayList、数组(Array)和列表集合(ArrayList)的区别

    ArrayList和Vector的区别ArrayList与Vector主要从二方面来说.  一.同步性:   Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步 ...

  2. go 数组(array)、切片(slice)、map、结构体(struct)

    一 数组(array) go语言中的数组是固定长度的.使用前必须指定数组长度. go语言中数组是值类型.如果将数组赋值给另一个数组或者方法中参数使用都是复制一份,方法中使用可以使用指针传递地址. 声明 ...

  3. javascript类型系统——数组array

    × 目录 [1]创建 [2]本质 [3]稀疏[4]长度[5]遍历[6]类数组 前面的话 除了对象之外,数组Array类型可能是javascript中最常用的类型了.而且,javascript中的数组与 ...

  4. swift基本用法-数组array

    数组简单用法 //------------------------------------------------------------------------------ // 1. 数组定义 / ...

  5. C#中数组Array、ArrayList、泛型List<T>的比较

    在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序 ...

  6. Javascript基础系列之(四)数据类型 (数组 array)

    字符串,数值,布尔值都属于离散值(scalar),如果某个变量是离散的,那么任何时候它只有一个值. 如果想使用变量存储一组值,就需要使用数组(array). 数组是由多个名称相同的树值构成的集合,集合 ...

  7. AS3 - 数组Array的几个常用方法(附样例)

    AS3 - 数组Array的几个常用方法(附样例) 2015-03-30 10:39发布:hangge浏览:241   Flex/Flash开发中,经常会使用到数组,下面总结了一些数组的常用方法. 1 ...

  8. Linux数组array基础

    Linux数组array基础[${a[*]}和$a的区别] Bash中,数组变量的赋值有两种方法: (1) name = (value1 ... valuen) 此时下标从0开始 (2) name[i ...

  9. 学习Swift -- 数组(Array) - 持续更新

    集合类型--数组 Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型 声明数组的方 ...

随机推荐

  1. SQLI DUMB SERIES-16

    (1)无论怎么输入,都没有回显,但当输入 admin")#时,显示登录成功.若通过其他方法获取数据库的用户名,可通过这个方法登录成功. (2)获取其他信息可用考虑时间延迟注入.方法同15.

  2. 在进行多次scanf时,printf输出错误

    随便一处代码,经过改正后,输出正确的 ''' #include <stdio.h> int main(){    int T;    scanf("%d",&T ...

  3. less--入门

    Less(Learner Style Sheets)是向后兼容css扩展语言. 变量(Variables) @width: 10px; @height: @width + 10px; header{ ...

  4. 2018.5.4 Unix的五种IO模型

    阻塞非阻塞和异步同步 同步和异步关注的是消息通信机制,关注两个对象之间的调用关系. 阻塞和非阻塞关注的是程序在等待调用结果(消息,返回值)时的状态,关注单一程序. Unix的五种IO模型 以下基于Li ...

  5. [双硬盘GPT分区安装linux] ----安装

    最近机器学习课程需要用到pytorch, 基于cuda8的pytorch的需要,最终决定还是要安装一个linux系统在我的windows10机器上.本篇记录安装过程备用. 本人笔记本是联想Y520,系 ...

  6. miniui的联动列表

    function OnCellBeginEdit(e) { var grid = e.sender; var column = e.column; if (!column.parentfield) { ...

  7. Android studio 中添加依赖model时依赖所需的准备

    例如向app中添加依赖core: core要做如下修改: 1.将core中build.gradle中   修改为  . 2.将core中的 applicationId 注释掉.

  8. MVC5 方法扩展

    public static MvcHtmlString DataDictionaryDropDownList(this HtmlHelper htmlHelper, string name, obje ...

  9. postfix配置&使用

    myorigin = $mydomain #以“user@example.com”(而不是“user@hostname.example.com”)发送邮件, #这样就没有理由将邮件发送到“user@h ...

  10. 工控随笔_17_西门子_WinCC的VBS脚本_06_过程和函数

    和其他语言一样,vbs提供了过程和函数机制,通过函数和过程可以优化代码结构和实现代码复用, 减少代码的编写量. 一.代码 具体不再多说,看实例代码. ' vbs的函数和过程 '1.过程式编程是一大编程 ...