码迷,mamicode.com
首页 > 编程语言 > 详细

数组的 增删改查 及常见方法

时间:2018-08-22 00:14:29      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:ever   负数   切分   逗号   sort   cti   截取   增删改查   创建   

<script>
var arr=[1,2,3,4]
// 增
// push() 方法
// 在数组末尾增加元素 返回的是新数组的长度
// arr.push(5,6)
// alert(arr.push(5,6))//8
// alert(arr)//1,2,3,4,5,6,5,6

// unshift()方法
// 想数组的最前面添加元素,返回的是新数组的长度
var arr2=[1,2,3,4]
arr.unshift(5,6);
//alert(arr)//5,6,1,2,3,4
// alert(arr.unshift(7,8))//8

// 删
// pop()方法
// 删除数组中最后一个元素 返回的是删除的元素
var arr3=[1,2,3,4]
arr3.pop();
//alert(arr3)//1,2,3
//alert(arr3.pop())//3

// shift()方法
// 删除数组中第一个元素 返回的是删除的元素
var arr5=[1,2,3,4]
arr5.shift();
//alert(arr5);//2,3,4
//alert(arr5.shift())//2
//alert(arr5)//3,4

// 改
// slice(start,end)(包括开头 不包括结尾)
// start必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。(也可以理解成length+start处理)
// end 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。(也可以理解成length+end处理)
// 和字符串中的用法一样
var arr6=[0,1,2,3,4,5,6,7,8,9];
//alert(arr6.slice(2,5))//2,3,4
// alert(arr6.slice(3))//3,4,5,6,7,8,9
//alert(arr6.slice(-7,-4))//3,4,5 相当于slice(3,6)
// alert(arr6.slice(-4));//6,7,8,9 相当于slice(6)

 

// splice(index,howmany,item1,.....,itemX)方法
// index 必需。整数,规定添加删除项目的位置,使用负数可从数组结尾处规定位置。
// howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
// item1, ..., itemX 可选。向数组添加的新项目。
// 返回被截取的元素,原数组被改变
// splice()方法可以完成 增删改
var arr7=[0,1,2,3,4,5,6,7,8,9]
// 删 改
//arr7.splice(2,2,"哈哈哈")//返回被切割的元素 2,3
//alert(arr7)//0,1,哈哈哈,4,5,6,7,8,9
// 增
// alert(arr7.splice(3,0,"恩恩"))//空白 因为没有截取元素
// alert(arr7)//0,1,2,恩恩,3,4,5,6,7,8,9
//alert(arr7.splice(-3,1))//7

// 查就不用说了 直接用下标查询就行

// join()方法
// 把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。
var arr8=[1,2,3,4,5]
console.log(typeof arr8.join()[0])//"1,2,3,4,5" string 因为没有指定分隔符 默认为逗号 类型已经是string了 可以用typeof 检查一下
console.log(arr8.join("+"))//"1+2+3+4+5" 指定分隔符为+
console.log(arr8.join("a"))//"1a2a3a4a5"
// 数组的join()方法 与 字符串的split()方法相反 后者是将字符串切割成字符串数组

// reverse()方法
// reverse() 方法用于颠倒数组中元素的顺序。
// 该方法会改变原来的数组,而不会创建新的数组。
var arr9=["aa",4,6,"bb"];
console.log(arr9.reverse())//["bb", 6, 4, "aa"]
console.log(arr9)//["bb", 6, 4, "aa"]

// sort(sortby)方法
// sortby 可选 必须是一个函数 返回 负数 是升序 0 代表俩值相等 返回整数位 降序
// 用于对数组的元素进行排序。按照字符编码排序
var arr10=[2,13,3,46,5]
console.log(arr10.sort())//[13, 2, 3, 46, 5]
console.log(arr10.sort(function(a,b){return a-b;}))//[2, 3, 5, 13, 46]
console.log(arr10.sort(function(a,b){return b-a;}))//[46, 13, 5, 3, 2]

// 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

// 如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

// 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
// 若 a 等于 b,则返回 0。
// 若 a 大于 b,则返回一个大于 0 的值。

 

 

//concat()方法 合并数组
var arr11=[1,2];
var arr12=[3.4];
// console.log(arr11.concat(arr12))/[1, 2, 3.4]

 

 


</script>

数组的 增删改查 及常见方法

标签:ever   负数   切分   逗号   sort   cti   截取   增删改查   创建   

原文地址:https://www.cnblogs.com/fqh123/p/9515145.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!