JS数组练习可能用到的方法(待更新)
来源:互联网 发布:mac dns自动获取 编辑:程序博客网 时间:2024/05/20 23:35
- 前言:
- 熟悉数组各种方法时,要注意该方法是否会修改原数组,以及它的返回值。
- 在chrome控制台,console.log(Object.getOwnPropertyNames(Array.prototype)),打印array的所有属性,会输出:
- "length", "constructor",
- "concat", "pop", "push", "shift", "unshift", "slice", "splice", "indexOf", "join", "reverse",(已经列举的方法)
- "includes", "keys", "entries", "forEach", "filter", "map", "every", "some", "reduce", "reduceRight", "toString", "toLocaleString", "sort", "lastIndexOf", "copyWithin", "find", "findIndex", "fill"
- 其中,length、constructor属于属性,而其他的则是方法。
- length--返回数组内元素的个数
- constructor--返回对创建此对象的数组函数的引用,即返回这个构造函数,创建构造实例的构造函数。
- 下面简单的介绍一下各自的用途以及实例:
- 1.concat()
- concat()用于连接两个或多个数组,不会改变现有数组,仅仅返回被连接数组的一个副本。
- arr.concat(arg1,arg2.....),将参数添加到arr数组内,若参数为数组,则添加的是数组中的元素,而不是数组本身。
- eg:
- var a = [1,2,3];
- document.write(a.concat(4,5,6)); //输出为:1,2,3,4,5,6
- var a = [1,2,3];
- var b = [4,5,6];
- document.write(a.concat(b)); //输出为:1,2,3,4,5,6
- 2.join()
- join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。
- join(arg1),可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。
- eg:
- var arr = new Array(3)
arr[0] = "1"
arr[1] = "2"
arr[2] = "3"
document.write(arr.join()) //输出1,2,3 - 3.slice()
- slice() 方法可从已有的数组中返回选定的元素。
- slice(start,end)
- 参数start必需,start规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素开始,-2 指倒数第二个元素开始,以此类推。
- 参数end可选,end规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
- 返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。不会修改数组,只是返回一个子数组。
- eg:
- var arr = new Array(3)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
document.write(arr + "<br />") //输出1,3,5
document.write(arr.slice(1) + "<br />") //输出3,5
document.write(arr) //1,3,5 - document.write(arr.slice(0)+ "<br />")//输出1,3,5
- var arr = new Array(6)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
arr[3] = "7"
arr[4] = "9"
arr[5] = "11"
document.write(arr + "<br />") //输出1,3,5,7,9,11
document.write(arr.slice(2,4) + "<br />") //输出5,7,9
document.write(arr) //输出1,3,5,7,9,11 - 4.splice()
- splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。直接修改原数组。
- splice(index,howmany,item1,item2......)。index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。 item1, ..., itemX 可选。向数组添加的新项目。
- splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。 - eg:
- var arr = new Array(5)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
arr[3] = "7"
arr[4] = "9"
document.write(arr + "<br />") //输出1,3,5,7,9
arr.splice(2,1,"11")
document.write(arr) //输出1,3,11,7,9 - 5.pop()
- pop() 方法用于删除并返回数组的最后一个元素。直接修改数组。
- pop() 方法将删除 arrayObject 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值。如果数组已经为空,则 pop() 不改变数组,并返回 undefined值。
- eg:
- var arr = new Array(3)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
document.write(arr + "<br />"); //输出1,3,5
document.write(arr.pop()+ "<br />"); //输出5
document.write(arr); //输出1,3 - 6.shift()
- shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
- 如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。请注意,该方法不创建新数组,而是直接修改原有的 arrayObject。
- eg:
- var arr = new Array(3)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
document.write(arr + "<br />") //输出1,3,5
document.write(arr.shift() + "<br />") //输出1
document.write(arr) //输出3,5 - 7.push()
- push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。直接修改原数组。返回值为添加新元素后的新长度。
- push(arg1,arg2......);必须要有一个参数。
- eg:
- var arr = new Array(3)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
document.write(arr + "<br />"); //输出1,3,5
document.write(arr.push("7") + "<br />"); //输出4,数组长度
document.write(arr); //输出1,3,5,7 - 8.unshift()
- unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
- unshift(arg1,arg2.....),必须要有一个参数。
- unshift() 方法将把它的参数插入 arrayObject 的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。
请注意,unshift() 方法不创建新的创建,而是直接修改原有的数组。该方法不能再ie上正确工作。 - eg:
- var arr = new Array()
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
document.write(arr + "<br />"); //输出1,3,5
document.write(arr.unshift("7") + "<br />");//输出4
document.write(arr); //输出7,1,3,5 - 9.reverse()
- reverse() 方法用于颠倒数组中元素的顺序。该方法会改变原来的数组,而不会创建新的数组。
- eg:
- var arr = new Array(3)
arr[0] = "1"
arr[1] = "3"
arr[2] = "5"
document.write(arr + "<br />") //输出1,3,5
document.write(arr.reverse()) //输出5,3,1 - 10.indexOf()
- indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置。
- 提示和注释
注释:indexOf() 方法对大小写敏感!
注释:如果要检索的字符串值没有出现,则该方法返回 -1。 - eg:
- var str="Hello world!"
- document.write(str.indexOf("Hello") + "<br />");//输出0
document.write(str.indexOf("World") + "<br />");//输出-1,因为World和world不一样,区分大小写。
document.write(str.indexOf("world"));//输出6
阅读全文
1 0
- JS数组练习可能用到的方法(待更新)
- 总结:Js中可能用到的一些小方法
- JS中常用到的数组工具方法
- PHP项目中可能用到的函数(持续更新)
- JS数组中常用到的一些方法总结
- 可能用到的一些方法积累
- 使用python进行多分类会用到的函数(待更新)
- js 数组的内置方法(持续更新)
- 一些IT行业可能需要用到的网站(随时更新)
- 常用js验证(待更新)
- 常用JS外链(待更新)
- 可能用到的函数
- 论文可能用到的
- 进制间的转换方法--待更新
- 反病毒可能需要用到的方法及操作
- 慕课网混合布局编写编程练习(待更新...)
- js的方法练习
- iOS用到的设计模式(待整理)
- 【2017新疆网络赛】Our Journey of Dalian Ends 费用流
- pageContext和config对象
- MT 107 General Direct Debit Message一般直接借记电文
- STM32教程(4)-最小系统的设计
- 第四周 项目二 建设“单链表”算法库
- JS数组练习可能用到的方法(待更新)
- 15算法课程 7. Reverse Integer
- 《Ruminations on c++》c++ 和 c 的一些区别
- 文件系统
- 数据结构---线性表基本概念
- hdu 1880
- mount一个目录到另外一个目录
- OpenCV空间滤波
- Android之jni解决JNIEnv跨线程问题