JavaScript高级程序设计 读书笔记之九 本地对象Array


Posted in Javascript onFebruary 27, 2012

创建Array对象

//one 
var aValues=new Array(); //two 
var aValues=new Array(20); 
//three 
var aColors=new Array(); 
aColors[0]="red"; 
aColors[1]="green"; 
aColors[2]="blue"; 
//four 
var aColors=new Array("red","green","blue"); 
//five 
var aColors=["red","green","blue"];

join && split
join:连接字符串
var aColors=["red","green","blue"]; 
alert(aColors.join(","));//outputs "red,green,blue" 
alert(aColors.join("-spring-"));//outputs "red-spring-green-spring-blue" 
alert(aColors.join("]["));//outputs "red][green][blue"

split:分拆字符串
var sColors="red,green,blue"; 
var aColors=sColors.split(",");//outputs ["red", "green", "blue"] 
var redColors=aColors[0].split("");//outputs ["r", "e", "d"]

concat && slice
concat:追加数组
var aColors=["red","green","blue"]; 
var aColors2=aColors.concat("yellow","purple"); 
alert(aColors);//outputs ["red", "green", "blue"] 
alert(aColors2);//outputs ["red", "green", "blue", "yellow", "purple"]

slice:返回具有特定项的新数组
var aColors=["red","green","blue","yellow","purple"]; 
var aColors2=aColors.slice(1);//outputs ["green","blue","yellow","purple"] 
var aColors3=aColors.slice(1,4);//outputs ["green","blue","yellow"]

push && pop
跟栈一样,Array提供了push和pop方法,push方法用于在Array结尾添加一个或多个项,pop用于删除最后一个数组项,返回它作为函数值
var stack=new Array; 
stack.push("red"); 
stack.push("green"); 
stack.push("blue"); 
alert(stack);//outputs ["red","green","blue"] 
var vItem=stack.pop(); 
alert(vItem);//outputs ["blue"] 
alert(stack);//otputs ["red","green"]

shift && unshift
shift:删除数组中第一项,将其作为函数返回值,unshift:把一个项放在数组的第一个位置,然后把余下的项向下移动一个位置
var aColors=["red","green","blue"]; 
var vItem=aColors.shift(); 
alert(aColors);//outputs ["green","blue"] 
alert(vItem);//outputs ["red"] 
aColors.unshift("black"); 
alert(aColors);//outputs ["black","green","blue"]

reverse && sort
reverse:颠倒数组项的顺序,sort:按数组项的值升序排列(首先要调用toString()方法,将所有值转换成字符串)
var aColors=["blue","green","red"]; 
aColors.reverse(); 
alert(aColors);//outputs ["red","green","blue"] 
aColors.sort(); 
alert(aColors);//outputs ["blue","green","red"]

注意:
var aColors=[3,32,2,5]; 
aColors.sort(); 
alert(aColors);//outputs [2,3,32,5]

这是因为数字被转换成字符串,然后按字符代码进行比较的。

splice
splice:把数据项插入数组的中部

1、用作删除:只要声明两个参数,第一个参数为要删除的第一个项的位置,第二个参数为删除项的个数

var aColors=["red","green","blue","yellow"]; 
aColors.splice(0,2); 
alert(aColors);//outputs ["blue", "yellow"]

2、用作插入:声明三个或以上参数(第二个参数为0)就可以把数据插入指定位置,第一个参数为地始位置,第二个参数为0,第三个及以上参数为插入项
var aColors=["red","green","blue","yellow"]; 
aColors.splice(2,0,"black","white"); 
alert(aColors);//outputs ["red","green","black","white","blue", "yellow"]

3、用作删除并插入:声明三个或以上参数(第二个参数为不0)就可以把数据插入指定位置,第一个参数为地始位置,第二个参数为要删除的项的个数,第三个及以上参数为插入项
var aColors=["red","green","blue","yellow"]; 
aColors.splice(2,1,"black","white"); 
alert(aColors);//outputs ["red","green","black","white", "yellow"]
Javascript 相关文章推荐
js函数般调用正则
Apr 08 Javascript
js优化针对IE6.0起作用(详细整理)
Dec 25 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
May 20 Javascript
scrollWidth,clientWidth,offsetWidth的区别
Jan 13 Javascript
css如何让浮动元素水平居中
Aug 07 Javascript
Bootstrap3 内联单选和多选框
Dec 29 Javascript
bootstrap滚动监控器使用方法解析
Jan 13 Javascript
iscroll实现下拉刷新功能
Jul 18 Javascript
Webpack之tree-starking 解析
Sep 11 Javascript
老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)
Sep 19 Javascript
微信公众号平台接口开发 获取access_token过程解析
Aug 14 Javascript
vue浏览器返回监听的具体步骤
Feb 03 Vue.js
JavaScript高级程序设计 读书笔记之八 Function类及闭包
Feb 27 #Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
Feb 27 #Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 #Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
Feb 27 #Javascript
JavaScript高级程序设计 阅读笔记(四) ECMAScript中的类型转换
Feb 27 #Javascript
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
Feb 27 #Javascript
《JavaScript高级程序设计》阅读笔记(二) ECMAScript中的原始类型
Feb 27 #Javascript
You might like
一个简单的PHP入门源程序
2006/10/09 PHP
对squid中refresh_pattern的一些理解和建议
2009/04/17 PHP
PHP实现移除数组中为空或为某值元素的方法
2017/01/07 PHP
User Scripts: Video Download by User Scripts
2007/05/14 Javascript
javascript一些实用技巧小结
2011/03/18 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
2014/06/30 Javascript
js delete 用法(删除对象属性及变量)
2014/08/24 Javascript
Extjs grid panel自带滚动条失效的解决方法
2014/09/11 Javascript
使用js画图之饼图
2015/01/12 Javascript
jquery实现表单验证并阻止非法提交
2015/07/09 Javascript
jquery实现Ctrl+Enter提交表单的方法
2015/07/21 Javascript
javascript基本语法
2016/05/31 Javascript
浅谈EasyUi ComBotree树修改 父节点选择的问题
2016/11/07 Javascript
关于iframe跨域POST提交的方法示例
2017/01/15 Javascript
vue.js树形组件之删除双击增加分支实例代码
2017/02/28 Javascript
nodejs基于express实现文件上传的方法
2018/03/19 NodeJs
vuex state及mapState的基础用法详解
2018/04/19 Javascript
Angularjs中date过滤器失效的问题及解决方法
2018/07/06 Javascript
深入理解react-router 路由的实现原理
2018/09/26 Javascript
前端天气插件tpwidget使用方法详解
2019/06/24 Javascript
基于Vue.js与WordPress Rest API构建单页应用详解
2019/09/16 Javascript
js实现图片3D轮播效果
2019/09/21 Javascript
[44:51]2018DOTA2亚洲邀请赛 4.4 淘汰赛 VP vs Liquid 第二场
2018/04/05 DOTA
Python with用法实例
2015/04/14 Python
python实现中文分词FMM算法实例
2015/07/10 Python
简单谈谈python中的lambda表达式
2018/01/19 Python
Python面向对象类的继承实例详解
2018/06/27 Python
Python魔法方法功能与用法简介
2019/04/04 Python
浅谈pytorch、cuda、python的版本对齐问题
2020/01/15 Python
PHP面试题大全
2015/10/16 面试题
DIY手工制作经营店创业计划书
2014/02/01 职场文书
小学班主任评语大全
2014/04/23 职场文书
公司向个人借款协议书范本
2014/10/09 职场文书
家长会感言
2015/08/01 职场文书
Golang gRPC HTTP协议转换示例
2022/06/16 Golang
Win2008系统搭建DHCP服务器
2022/06/25 Servers