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 相关文章推荐
js验证模型自我实现的具体方法
Jun 21 Javascript
改变隐藏的input中value的值代码
Dec 30 Javascript
JS+CSS实现仿msn风格选项卡效果代码
Oct 22 Javascript
纯JavaScript代码实现文本比较工具
Feb 17 Javascript
JS实现上下左右对称的九九乘法表
Feb 22 Javascript
基于angular实现三级联动的生日插件
May 12 Javascript
详解React开发必不可少的eslint配置
Feb 05 Javascript
详解React+Koa实现服务端渲染(SSR)
May 23 Javascript
小程序实现列表点赞功能
Nov 02 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
Feb 09 Javascript
基于postman获取动态数据过程详解
Sep 08 Javascript
vue-quill-editor插入图片路径太长问题解决方法
Jan 08 Vue.js
基于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
对盗链说再见...
2006/10/09 PHP
最简单的PHP程序--记数器
2006/10/09 PHP
一个图形显示IP的PHP程序代码
2007/10/19 PHP
快速配置PHPMyAdmin方法
2008/06/05 PHP
使用eAccelerator加密PHP程序
2008/10/03 PHP
Php Mssql操作简单封装支持存储过程
2009/12/11 PHP
php中一个完整表单处理实现代码
2011/11/10 PHP
PHP文件锁定写入实例解析
2014/07/14 PHP
Ajax实现对静态页面的文章访问统计功能示例
2016/10/10 PHP
javascript 去字符串空格终极版(支持utf8)
2009/11/14 Javascript
IE bug table元素的innerHTML
2010/01/11 Javascript
关于textarea提交的内容无法换行的解决办法
2013/04/09 Javascript
jquery自动填充勾选框即把勾选框打上true
2014/03/24 Javascript
Javascript Object 对象学习笔记
2014/12/17 Javascript
vue.js+Echarts开发图表放大缩小功能实例
2017/06/09 Javascript
es6数值的扩展方法
2019/03/11 Javascript
原生js实现简单轮播图
2020/10/26 Javascript
Python中Collection的使用小技巧
2014/08/18 Python
Linux下使用python调用top命令获得CPU利用率
2015/03/10 Python
用Python实现一个简单的能够发送带附件的邮件程序的教程
2015/04/08 Python
python入门基础之用户输入与模块初认识
2016/11/14 Python
python中实现迭代器(iterator)的方法示例
2017/01/19 Python
Python使用QRCode模块生成二维码实例详解
2017/06/14 Python
计算机二级python学习教程(2) python语言基本语法元素
2019/05/16 Python
利用pandas将非数值数据转换成数值的方式
2019/12/18 Python
Linux下升级安装python3.8并配置pip及yum的教程
2020/01/02 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
迷你分体式空调:SoGoodToBuy
2018/08/07 全球购物
夏季奶茶店创业计划书
2014/01/16 职场文书
亚运会口号
2014/06/20 职场文书
迎新生标语大全
2014/10/06 职场文书
终止或解除劳动合同及劳动关系的证明书
2014/10/06 职场文书
2014年食品安全工作总结
2014/12/04 职场文书
2015年小学美术工作总结
2015/05/25 职场文书
2016学习依法治国心得体会
2016/01/15 职场文书
python使用XPath解析数据爬取起点小说网数据
2021/04/22 Python