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 RuntimeObject() 获取ie里面自定义函数或者属性的集合
Nov 23 Javascript
JS俄罗斯方块,包含完整的设计理念
Dec 11 Javascript
iframe的父子窗口之间的对象相互调用基本用法
Sep 03 Javascript
JS合并数组的几种方法及优劣比较
Sep 19 Javascript
jquery 插件实现瀑布流图片展示实例
Apr 03 Javascript
javascript实现画不相交的圆
Apr 07 Javascript
javascript省市区三级联动下拉框菜单实例演示
Nov 29 Javascript
浅谈Sublime Text 3运行JavaScript控制台
Jun 06 Javascript
玩转JavaScript OOP - 类的实现详解
Jun 08 Javascript
AngularJs  Creating Services详解及示例代码
Sep 02 Javascript
vue非父子组件通信问题及解决方法
Jun 11 Javascript
Vue项目History模式404问题解决方法
Oct 31 Javascript
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
Laravel框架定时任务2种实现方式示例
2018/12/08 PHP
Javascript事件实例详解
2013/11/06 Javascript
javaScript使用EL表达式的几种方式
2014/05/27 Javascript
jquery实现炫酷的叠加层自动切换特效
2015/02/01 Javascript
JavaScript Sort 的一个错误用法示例
2015/03/20 Javascript
JavaScript测试工具之Karma-Jasmine的安装和使用详解
2015/12/03 Javascript
基于javascript制作微博发布栏效果
2016/04/04 Javascript
jQuery双向列表选择器DIV模拟版
2016/11/01 Javascript
js实现将json数组显示前台table中
2017/01/10 Javascript
使用JS实现气泡跟随鼠标移动的动画效果
2017/09/16 Javascript
详解nodejs通过代理(proxy)发送http请求(request)
2017/09/22 NodeJs
vue的无缝滚动组件vue-seamless-scroll实例
2017/12/18 Javascript
vue系列之requireJs中引入vue-router的方法
2018/07/18 Javascript
Vue+Typescript中在Vue上挂载axios使用时报错问题
2019/08/07 Javascript
javascript实现贪吃蛇小游戏
2020/07/28 Javascript
使用beaker让Facebook的Bottle框架支持session功能
2015/04/23 Python
python获取一组数据里最大值max函数用法实例
2015/05/26 Python
Django应用程序中如何发送电子邮件详解
2017/02/04 Python
关于Python数据结构中字典的心得
2017/12/04 Python
Python工厂函数用法实例分析
2018/05/14 Python
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
Python基于pandas实现json格式转换成dataframe的方法
2018/06/22 Python
使用python进行拆分大文件的方法
2018/12/10 Python
详解解决Python memory error的问题(四种解决方案)
2019/08/08 Python
Django 自动生成api接口文档教程
2019/11/19 Python
运行Python编写的程序方法实例
2020/10/21 Python
利用CSS3的transform做的动态时钟效果
2011/09/21 HTML / CSS
加拿大百叶窗和窗帘定制网站:Blinds
2017/01/30 全球购物
30岁生日感言
2014/01/25 职场文书
2014党的群众路线教育实践活动总结报告
2014/10/31 职场文书
二手车转让协议书
2015/01/29 职场文书
无罪辩护词范文
2015/05/21 职场文书
社区低保工作总结2015
2015/07/23 职场文书
如何让vue长列表快速加载
2021/03/29 Vue.js
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
「约定的梦幻岛」作画发布诺曼生日新绘
2022/03/21 日漫