JavaScript 数组的常用操作
JavaScript splice 方法
splice 方法用于插入、删除或替换数组的元素。语法如下:
array_object.splice(start, num, element1, element1, ...)
| 参数 | 说明 |
|---|---|
| array_object | 要操作的数组(对象) |
| start | 必需。开始添加/删除元素的下标数字。 |
| num | 可选。规定应该删除多少元素,数字。可以是 "0",如果省略则删除从 start 到原数组结尾的所有元素。 |
| element1, ... | 可选。规定从 start 处要添加到数组的新元素序列,使用 , 分隔多个元素。 |
如果从 array_object 中删除了元素,则返回的是被删除的元素的数组。
splice 方法删除元素实例
<script language="JavaScript">
var array_1 = new Array('a','b','c','d');
document.write( array_1.splice(1,2) + '<br />' );
document.write( array_1 );
</script>
运行该例子,输出:
b,c
a,d
注意:上面 splice 方法返回的是一个数组,该数组包含了被删除的 'b','c' 两个元素。
splice 方法插入元素实例
当 num 参数设置为 0 且 element1 等参数不为空时,将把 element1, ... 等元素插入 start 处。
<script language="JavaScript">
var array_1 = new Array('a','b','c','d');
document.write( array_1.splice(1,0,'tom') + '<br />' );
document.write( array_1 );
</script>
运行该例子,输出:
a,tom,b,c,d
可见在插入数组模式下,splice 方法不返回任何内容。
splice 方法替换元素实例
当 num 参数设置大于 0 且 element1 等参数不为空时,将把 element1, ... 等元素替换在被删除的数组处。这个过程我们可以看做是上面删除元素与插入元素的结合。
<script language="JavaScript">
var array_1 = new Array('a','b','c','d');
document.write( array_1.splice(1,2,'tom') + '<br />' );
document.write( array_1 );
</script>
运行该例子,输出:
b,c
a,tom,d
可见在替换模式下,返回的仍然是包含被删除的元素的数组,而将参数里的元素序列从删除的位置插入。
JavaScript shift 方法
shift 方法用于删除数组的第一个元素,并返回删除的元素值。语法如下:
array_object.shift( )
数组执行 shift 方法后,数组长度减 1 ,后面的元素(如果有的话)下标同时减 1 。如果数组已经为空,则数组不会被改变,shift 方法将返回 undefined。
pop 方法实例
<script language="JavaScript">
var array_1 = new Array('a','b','c');
document.write( array_1.shift() + '<br />' );
document.write( array_1 );
</script>
运行该例子,输出:
a
b,c
JavaScript unshift 方法
unshift 方法用于向数组的开头添加一个或多个元素,并返回新数组的长度。语法如下:
array_object.unshift( newelement1, newelement2, ... )
| 参数 | 说明 |
|---|---|
| array_object | 要操作的数组(对象) |
| newelement1, ... | 至少一个。要添加到数组的元素序列,使用 , 分隔。 |
提示:unshift 方法将直接修改原数组,并将已经存在的元素顺次地移到较高的下标处,而不像其他很多方法一样得到一个原数组的副本。
unshift 方法实例
<script language="JavaScript">
var array_1 = new Array('a','b','c');
document.write( array_1.unshift(1,2) + '<br />' );
document.write( array_1 );
</script>
运行该例子,输出:
5
1,2,a,b,c
注意
在 IE 某些版本下,该方法返回的可能是 undefined 而不是新数组的长度。
JavaScript 数组的常用操作的更多相关文章
- javascript 数组的常用操作函数
join() Array.join(/* optional */ separator) 将数组转换为字符串,可带一个参数 separator (分隔符,默认为“,”). 与之相反的一个方法是:Stri ...
- javascript中字符串常用操作整理
javascript中字符串常用操作整理 字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用 ...
- Java实例 Part4:数组及其常用操作
目录 Part4:数组及其常用操作 Example01:将二维数组的行列交换 Example02:使用选择排序法对数组进行排序 Example03:使用冒泡排序法对数组进行排序 Example04:使 ...
- pandas_一维数组与常用操作
# 一维数组与常用操作 import pandas as pd # 设置输出结果列对齐 pd.set_option('display.unicode.ambiguous_as_wide',True) ...
- JavaScript之数组的常用操作函数
js对数组的操作非常频繁,但是每次用到的时候都会被搞混,都需要去查相关API,感觉这样很浪费时间.为了加深印象,所以整理一下对数组的相关操作. 常用的函数 concat() 连接两个或更多的数组,并返 ...
- javascript中字符串常用操作总结、JS字符串操作大全
字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用操作做个整理,一者加深印象,二者方便今后温 ...
- JavaScript数组的某些操作(一)
在软件开发的过程中JavaScript的编程在所难免.当中对数组的操作尤为常见,这里介绍一下和JavaScript数组相关的某些操作: 1.删除并返回数组的第一个元素--shift方法: <!D ...
- Javascript 数组对象常用的API
常用的JS数组对象API ES5及以前的Api ECMAScript5为数组定义了5个迭代方法,每个方法接收两个参数, 一个是每项运行的函数,一个是运行该函数的作用域对象(可选项),传入这些方法的函数 ...
- Javascript 字符串(二)常用操作整理
一.js获取字符串的字节数 这个好使--- function getBytesLength(str) { // 在GBK编码里,除了ASCII字符,其它都占两个字符宽 return str.repla ...
随机推荐
- POJ 3660 Cow Contest (dfs)
Cow Contest Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11129 Accepted: 6183 Desc ...
- Linux的重定向与管道
(1).输出重定向 定义:将命令的标准输出结果保存到指定的文件中,而不是直接显示在显示器上. 输出重定向使用>和>>操作符. 语法:cmd > filename,表示将标准输出 ...
- 洛谷P1113 杂务
题目描述 John的农场在给奶牛挤奶前有很多杂务要完成,每一项杂务都需要一定的时间来完成它.比如:他们要将奶牛集合起来,将他们赶进牛棚,为奶牛清洗乳房以及一些其它工作.尽早将所有杂务完成是必要的,因为 ...
- ARC 080 - C 4-adjacent
题面在这里! 把每个数替换成它在2上的指数,然后发现0只能和>=2的相邻,所以手玩一下就好啦. #include<bits/stdc++.h> #define ll long lon ...
- 【POJ】1088滑雪
滑雪 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 97335 Accepted: 36911 Description ...
- BZOJ 4059 [Cerc2012]Non-boring sequences(启发式分治)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4059 [题目大意] 一个序列被称为是不无聊的,仅当它的每个连续子序列存在一个独一无二的 ...
- 【启发式搜索】【A*算法】hdu6171 Admiral
一个舰队的目标状态如上图.红色是旗舰.然后给你初始局面,每一次决策可以把旗舰和其上一层或下一层的两个相邻的进行交换.如果能在20步内出解的话,输出最小步数:否则输出“too difficult”. 把 ...
- 【最短路】【spfa】CDOJ1647 酌贪泉而觉爽, 处涸辙以犹欢。
题意: 给你一个全为0的01串,问你能否通过一系列的变换,得到全为1的01串. 分析: 将每个01串看作一个点,每一个变换可以看作是一条有向边,现在问题可以转化 为找从“00..0”这个点到“11.. ...
- 【hdu4734】【F(x)】数位dp + 小小的总结一下
(https://www.pixiv.net/member_illust.php?mode=medium&illust_id=65608478) Problem Description For ...
- bootstrap学习(全局CSS样式)(二)
标题类:.h1到.h6 页面主体 bootstrap将全局font-size设置为14px,line-height设置为1.428,这些属性 直接赋予元素和所有段落元素. 文本对齐类 text-lef ...