在软件开发的过程中JavaScript的编程在所难免。当中对数组的操作尤为常见,这里介绍一下和JavaScript数组相关的某些操作:

1、删除并返回数组的第一个元素——shift方法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>删除并返回数组元素的第一项</title>
<script type="text/javascript">
var nameArray = ["陈洪涛","李小宁"];
console.log(nameArray.shift());
for(var nameIndex in nameArray){
console.log(nameArray[nameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:第一条输出语句仅仅输出了“陈洪涛”;for循环仅仅输出了一条数据——“李小宁”;

2、删除并返回数组的最后一个元素——pop方法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title><span style="font-family: Verdana, Arial, 宋体; line-height: 18px; background-color: rgb(249, 249, 249);">删除并返回数组的最后一个元素</span></title>
<script type="text/javascript">
var nameArray = ["陈洪涛","李小宁"];
console.log(nameArray.pop());
for(var nameIndex in nameArray){
console.log(nameArray[nameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:第一条输出语句仅仅输出了“李小宁”;for循环仅仅输出了一条数据——“陈洪涛”;

3、删除数组中某些元素——splice方法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>删除并返回数组元素的第一项</title>
<script type="text/javascript">
var nameArray = ["陈洪涛","李小宁","吴思娣"];
nameArray.splice(1,2);//从第二个元素開始,删除2个元素
for(var nameIndex in nameArray){
console.log(nameArray[nameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:for循环仅仅输出了“陈洪涛”;

特殊说明:上面splice方法另一个作用——删除元素并在原删除元素的位置加入新的元素:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>删除数组中某些元素</title>
<script type="text/javascript">
var nameArray = ["陈洪涛","李小宁","吴思娣","郭华山"];
nameArray.splice(1,2, "胡楠");//从第二个元素開始,删除2个元素,并加入新的元素
for(var nameIndex in nameArray){
console.log(nameArray[nameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:for循环依次输出:“陈洪涛”  “胡楠”  “郭华山”。

4、获取已有的数组选定的元素——slice方法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>获取已有的数组选定的元素</title>
<script type="text/javascript">
var nameArray = ["陈洪涛","李小宁","吴思娣","郭华山"];
var newNameArray = nameArray.slice(1,3);//获取已有数组中第二个元素(包含)到第四个元素(不包含)之间的元素
for(var newNameIndex in newNameArray){
console.log(newNameArray[newNameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:for循环依次输出:“李小宁”  “吴思娣”;

5、向数组的末尾加入一个或多个元素并返回新的长度——push方法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>向数组的末尾加入一个或多个元素并返回新的长度</title>
<script type="text/javascript">
var nameArray = ["陈洪涛"];
var lenght = nameArray.push("李小宁","吴思娣");
console.log(lenght);
for(var nameIndex in nameArray){
console.log(nameArray[nameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:第一条输出语句输出了“3”;for循环依次输出:“陈洪涛” “李小宁” “吴思娣”;

6、将一个或多个数组合并返回合并后的结果——concat方法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>将一个或多个数组合并返回合并后的结果</title>
<script type="text/javascript">
var nameArray1 = ["陈洪涛"];
var nameArray2 = ["李小宁","吴思娣"];
var nameArray = nameArray1.concat(nameArray2);
for(var nameIndex in nameArray){
console.log(nameArray[nameIndex]);
}
</script>
</head>
<body>
</body>
</html>

说明:for循环依次输出:“陈洪涛” “李小宁” “吴思娣”;

JavaScript数组的某些操作(一)的更多相关文章

  1. JavaScript 数组的常用操作

    JavaScript splice 方法 splice 方法用于插入.删除或替换数组的元素.语法如下: array_object.splice(start, num, element1, elemen ...

  2. javascript 数组的常用操作函数

    join() Array.join(/* optional */ separator) 将数组转换为字符串,可带一个参数 separator (分隔符,默认为“,”). 与之相反的一个方法是:Stri ...

  3. JavaScript数组的某些操作(二)

    7.颠倒数组中元素的顺序(注意:不是为数组排序)--reverse方法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...

  4. Javascript 数组的一些操作

    (1) shift  删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4, ...

  5. Javascript数组操作

    使用JS也算有段时日,然对于数组的使用,总局限于很初级水平,且每每使用总要查下API,或者写个小Demo测试下才算放心,一来二去,浪费不少时间:思虑下,堪能如此继续之?当狠心深学下方是正道. 原文链接 ...

  6. Javascript数组操作(转)

    1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限, ...

  7. JavaScript数组常用操作

    前言 相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法.这里无非是对原生js的数组操作多了一些包装. 这里 ...

  8. RX学习笔记:JavaScript数组操作

    RX学习笔记:JavaScript数组操作 2016-07-03 增删元素 unshift() 在数组开关添加元素 array.unshift("value"); array.un ...

  9. javascript数组操作汇总

    javascript之数组操作 - 不悔的青春 - 博客园 1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array( ...

随机推荐

  1. POJ——3159Candies(差分约束SPFA+前向星+各种优化)

    Candies Time Limit: 1500MS   Memory Limit: 131072K Total Submissions: 28071   Accepted: 7751 Descrip ...

  2. Netflix Ribbon源码设计错误的证据(附正确示例)

    我在之前一篇博客里https://www.cnblogs.com/yangfeiORfeiyang/p/9644254.html 里对Netflix Ribbon的Loadbalancer类源码设计的 ...

  3. net3:Button的CommandName使用,AdRotator,BulletedList的使用

    原文发布时间为:2008-07-29 -- 来源于本人的百度文章 [由搬家工具导入] using System;using System.Data;using System.Configuration ...

  4. Python入门--13--递归

    什么是递归: 有调用函数自身的行为 有一个正确的返回条件 设置递归的深度: import sys sys.setrecursionlimit(10000) #可以递归一万次 用普通的方法也就是非递归版 ...

  5. 洛谷—— P3375 【模板】KMP字符串匹配

    P3375 [模板]KMP字符串匹配 题目描述 如题,给出两个字符串s1和s2,其中s2为s1的子串,求出s2在s1中所有出现的位置. 为了减少骗分的情况,接下来还要输出子串的前缀数组next. (如 ...

  6. bzoj 5216: [Lydsy2017省队十连测]公路建设

    5216: [Lydsy2017省队十连测]公路建设 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 66  Solved: 37[Submit][St ...

  7. ActiveMQ消息的延时和定时投递

    ActiveMQ对消息延时和定时投递做了很好的支持,其内部启动Scheduled来对该功能支持,也提供了一个封装的消息类型:org.apache.activemq.ScheduledMessage,只 ...

  8. 深度神经网络多任务学习(Multi-Task Learning in Deep Neural Networks)

    https://cloud.tencent.com/developer/article/1118159 http://ruder.io/multi-task/ https://arxiv.org/ab ...

  9. 生活娱乐 WIFI机器人(某机器发烧友自己动手做一台)

    某机器发烧友自己动手做一台WIFI机器人,以下是这位发烧友的自述!让我们一起来分享他的劳动成果-- 在经历了十多天的疯狂淘宝.组装.调试.拆卸.再组装.再调试的过程后,俺的Wifi Robot终于于2 ...

  10. Intel Edision —— 从SSH无法连接到systemd

    前言 原创文章,转载引用务必注明链接.如有疏漏,欢迎斧正. 最近在试用Wyliodrin,安装过程中出现了两个问题,一是无法使用SSH登录到Edison:二是EDISON磁盘的问题.分别涉及到syst ...