JavaScript数组各种常见用法实例分析


Posted in Javascript onAugust 04, 2015

本文实例讲述了JavaScript数组各种常见用法。分享给大家供大家参考。具体如下:

运行效果如下图所示:

JavaScript数组各种常见用法实例分析

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>javascript各种数组方法的使用</title>
<style> 
div{color:green;padding:10px 15px;margin:12px 0;background:#f0f0f0;border:1px dotted #333;font:12px/1.5 Courier New;word-wrap:break-word;}
</style>
<script type="text/javascript"> 
window.onload = function ()
{
  var aDiv = document.getElementsByTagName("div");
  var aInput = document.getElementsByTagName("input");
  var i = 0;
  var bS1 = bS2 = true;
  var aTmp = [];
  //删除/添加第一项
  aInput[0].onclick = function ()
  {
    aTmp = getArray(aDiv[0].innerHTML);
    bS1 ?
    //删除第一项, shift()方法
    (aTmp.shift(), this.value = this.value.replace("删除","添加"), bS1 = false) :
    //添加第一项, unshift()方法
    (aTmp.unshift("January(1)"), this.value = this.value.replace("添加","删除"), bS1 = true);
    //输出
    aDiv[0].innerHTML = aTmp.join()
  };
  //删除/添加最后一项
  aInput[1].onclick = function ()
  {
    aTmp = getArray(aDiv[0].innerHTML);
    bS2 ?
    //删除最后一项, pop()方法
    (aTmp.pop(), this.value = this.value.replace("删除","添加"), bS2 = false) :
    //添加最后一项, push()方法
    (aTmp.push("December(12)"), this.value = this.value.replace("添加","删除"), bS2 = true);
    //输出
    aDiv[0].innerHTML = aTmp.join()
  };
  //复制, concat()方法
  aInput[2].onclick = function ()
  {
    aTmp = getArray(aDiv[1].innerHTML);
    //输出
    aDiv[1].innerHTML = aTmp.concat(aTmp).toString().replace(/\s/g,"")
  };
  //还原, 利用数组的 length 特点
  aInput[3].onclick = function ()
  {
    aTmp = getArray(aDiv[1].innerHTML);
    //设置数组长度
    aTmp.length = 10;
    //输出
    aDiv[1].innerHTML = aTmp.join()
  };
  //第三组数据还原
  aInput[4].onclick = function ()
  {
    aTmp = ["red","green","blue","white","yellow","black","brown"];
    //输出
    aDiv[2].innerHTML = aTmp.join()
  };
  //删除前三项
  aInput[5].onclick = function ()
  {
    aTmp = getArray(aDiv[2].innerHTML);
    //删除, 0开始, 删除3个
    aTmp.splice(0, 3);  
    //输出
    aDiv[2].innerHTML = aTmp.join()
  };
  //删除第二至三项
  aInput[6].onclick = function ()
  {
    aTmp = getArray(aDiv[2].innerHTML);
    //删除, 2开始, 删除2个
    aTmp.splice(1, 2);  
    //输出
    aDiv[2].innerHTML = aTmp.join()
  };
  //在第二顶后插入"orange", "purple"
  aInput[7].onclick = function ()
  {
    aTmp = getArray(aDiv[2].innerHTML);
    //插入, 2开始, 插入"orange", "purple"
    aTmp.splice(1, 0, "orange", "purple");  
    //输出
    aDiv[2].innerHTML = aTmp.join()
  };
  //替换第二项和第三项
  aInput[8].onclick = function ()
  {
    aTmp = getArray(aDiv[2].innerHTML);
    //插入, 2开始替换
    aTmp.splice(1, 2, "#009900", "#0000ff");  
    //输出
    aDiv[2].innerHTML = aTmp.join()
  };
  //将div中的内容转为数组
  //str  div对象
  function getArray(str)
  {
    aTmp.length = 0;
    str = str.split(",");
    for (var i in str)aTmp.push(str[i]);
    return aTmp
  }
}
</script>
</head>
<body>
<div>January(1),February(2),March(3),April(4),May(5),June(6),July(7),Aguest(8),September(9),October(10),November(11),December(12)</div>
<input type="button" value="删除January(1)" />
<input type="button" value="删除December(12)" />
<div>0,1,2,3,4,5,6,7,8,9</div>
<input type="button" value="复制" />
<input type="button" value="还原" />
<div>red,green,blue,white,yellow,black,brown</div>
<input type="button" value="还原" />
<input type="button" value="删除前三项" />
<input type="button" value="删除第二至三项" />
<input type="button" value="在第二项后插入(orange, purple)" />
<input type="button" value="替换第二项和第三项" />
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 应用类库代码
Jun 02 Javascript
javascript parseInt 大改造
Sep 27 Javascript
理解JavaScript变量作用域更轻松
Oct 25 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
Aug 07 Javascript
JavaScript中使用Math.PI圆周率属性的方法
Jun 14 Javascript
jQuery和hwSlider实现内容响应式可触控滑动切换效果附源码下载(二)
Jun 22 Javascript
整理一下常见的IE错误
Nov 18 Javascript
canvas绘制爱心的几种方法总结(推荐)
Oct 31 Javascript
从零到一详聊创建Vue工程及遇到的常见问题
Apr 25 Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
Jul 20 Javascript
vue使用video插件vue-video-player的示例
Oct 03 Javascript
使用TS来编写express服务器的方法步骤
Oct 29 Javascript
基于Jquery实现表单验证
Jul 20 #Javascript
javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
Aug 04 #Javascript
jq实现左侧显示图片右侧文字滑动切换效果
Aug 04 #Javascript
javascript控制图片播放的实现代码
Jul 29 #Javascript
两种JS实现屏蔽鼠标右键的方法
Aug 20 #Javascript
Javascript实现鼠标右键特色菜单
Aug 04 #Javascript
JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
Aug 04 #Javascript
You might like
Godaddy空间Zend Optimizer升级方法
2010/05/10 PHP
PHP实现利用MySQL保存session的方法
2014/08/23 PHP
详解PHP序列化反序列化的方法
2015/10/27 PHP
简单的自定义php模板引擎
2016/08/26 PHP
浅谈PHP命令执行php文件需要注意的问题
2016/12/16 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
JavaScript Perfection kill 测试及答案
2010/03/23 Javascript
jQuery用unbind方法去掉hover事件及其他方法介绍
2013/03/18 Javascript
js实现动画特效的文字链接鼠标悬停提示的方法
2015/03/02 Javascript
AngularJS基础知识笔记之表格
2015/05/10 Javascript
最新最热最实用的15个jQuery插件汇总
2015/07/05 Javascript
实例详解Nodejs 保存 payload 发送过来的文件
2016/01/14 NodeJs
用NodeJS实现批量查询地理位置的经纬度接口
2016/08/16 NodeJs
Centos6.8下Node.js安装教程
2017/05/12 Javascript
总结js中的一些兼容性易错的问题
2017/12/18 Javascript
详解node.js中的npm和webpack配置方法
2018/01/21 Javascript
element-ui 设置菜单栏展开的方法
2018/08/22 Javascript
Vue监听页面刷新和关闭功能
2019/06/20 Javascript
vue实现拖拽的简单案例 不超出可视区域
2019/07/25 Javascript
vue中利用three.js实现全景图的完整示例
2020/12/07 Vue.js
[45:56]Ti4正赛第一天 VG vs NEWBEE 3
2014/07/19 DOTA
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
2018/06/13 Python
详解多线程Django程序耗尽数据库连接的问题
2018/10/08 Python
python-opencv颜色提取分割方法
2018/12/08 Python
python垃圾回收机制(GC)原理解析
2019/12/30 Python
如何解决tensorflow恢复模型的特定值时出错
2020/02/06 Python
python中threading开启关闭线程操作
2020/05/02 Python
解决pytorch 数据类型报错的问题
2021/03/03 Python
澳大利亚领先的在线机械五金、园艺和存储专家:Edisons
2018/03/24 全球购物
商务宴会祝酒词
2015/08/11 职场文书
2016年幼儿园教师师德承诺书
2016/03/25 职场文书
大学迎新生的欢迎词
2019/06/25 职场文书
小学生优秀作文范文(六篇)
2019/07/10 职场文书
Redis中key的过期删除策略和内存淘汰机制
2022/04/12 Redis
利用Python实现翻译HTML中的文本字符串
2022/06/21 Python
python数字图像处理之对比度与亮度调整示例
2022/06/28 Python