javascript基础之数组(Array)对象
发布时间:2008-06-25 13:32:00
标签:数组,array,对象,javascript
一、数组的创建
方式一
var a = new Array();
a[0]="wo";
a[1]="My Name"
a[2]=5
a[3]={x:1 , y:3}
方式二
var a=new Array("wo","My Name",5,{x:1 , y:3});
var a2=new Array(13);//注意,这个13是表示a有13个未定义元素!(因为这时候只传给Array一个参数)
方式三
var a=["wo","My Name",5,{x:1 , y:3}];
var a2=[[1,2,3],[1,2,3]];//可以嵌套
var i=11;
var a3=[i,i+1,i+2];//可以为变量
var a4=[1,,,,5];//有3个未定义的元素
二、数组的函数
1. join() 把所有的元素转换为字串,参数作为分隔符(默认分隔符是 ,)
var a=[1,2,3];
a.join();//1,2,3
a.join(" : ");//1 : 2 : 3
2.reverse() 对数组反向排序 sort() 默认按照UTF-8码的顺序排序,可以传一个参数,如果返回一个小于等于0的数,第1个参数出现在第2个参数前面,反之同理
function randOrd(){
return (Math.round(Math.random())-0.5);
}
anyArray = new Array('3','a','5','F','x','47');
anyArray.sort( randOrd ); //把数组乱序排列
3.concat() 返回一个数组,包含了原数组和参数
anyArray = new Array(47,33);
anyArray.concat(8,99,88 );
//[47,33,8,99,88]
anyArray.concat([8,99],[88,53] );
//[47,33,8,99,88,53],会自动把参数中数组拆包一层
anyArray.concat(2,[3,[4,5]]);
//[47,33,2,3,[4,5]],拆包只拆一层
4.slice() 返回一个数组的切片,返回规则如下
var a = [1,2,3,4,5]
a.slice(0,3); //返回a[0]至a[2],即[1,2,3]
a.slice(3); //返回a[3]至结尾,即[4,5]
a.slice(1,-1);//返回a[1]至最后一个元素[2,3,4]
a.slice(-3,-2);//返回[3]
5.splice() 可以删除/添加原数组元素,同时返回删除的值
var a = [1,2,3,4,5,6,7];
a.splice(4);
//删除a[4]至结尾,同时返回删除的值,即a=[1,2,3,4],返回[5,6,7]
var a = [1,2,3,4,5,6,7];
a.splice(3,3,"a","b");
//从a[3]开始,删除3个元素(包括a[3]),同时在从a[3]开始插入"a","b"作为新的元素,返回删除的值
//即a=[1,2,3,"a","b",7],返回[4,5,6]
var a = [1,2,3,4,5,6,7];
a.splice(3,0,["a",2],"k");
//返回[],a=[1,2,3,["a",2],"k",4,5,6,7] ,splice()不会对添加的数组拆包
6.push()和pop()
var stack=[];
stack.push(1,2);//stack=[1,2],return 2(2表示数组长度)
stack.pop();//stack=[1],return 2
stack.push(3);//stack=[1,3],return 2(2表示数组长度)
stack.pop();//stack=[1],return 3
stack.push([4,5]);//stack=[1,[4,5]],return 2
stack.pop();//stack=[1],return [4,5]
stack.pop();//stack=[],return 1
7.unshift()和shift() 和push()和pop()类似,不过是在数组的头进行操作
var a=[2];
a.unshift(1);
//a=[1,2]
//IE(包括IE7)和标准的规定返回值却不同,Gecko/Opera 中返回值为新数组的长度,而 IE 中没有返回值,也就是返回值是 undefined。因此,编程时不要依赖这个返回值。
a.unshift(3,[4,5]);//a=[3,[4,5],1,2]
a.shift();
//返回3
8.toString() toString等价于不加参数的join
0
投稿
猜你喜欢
- 前言 使用scrapy进行大型爬取任务的时候(爬取耗时以天为单位),无论主机网速多好,爬完之后总会发现scrapy
- 如何用Access加密页面?很简单哦,看看这个用用Access和ASP做的加密程序: <%userid =&nbs
- 我在一篇文章所说,首页的“站点名称”最好用h1标签来定义,但从美观考虑,要用logo图片来代替h1,这时需要隐藏h1内的这段文字,但又不能对
- 1, see the slow log status;mysql> show variables like '%slow%
- SQL Server的作业调度来建立自动备份的方法◆1、进入企业管理器中->管理->sql server代理->作业;◆2
- 1.介绍DeLorean是一个Python的第三方模块,基于 pytz 和 dateutil 开发,用于处理Python中日期时间的格式转换
- Dataframe结构放在numpy来看应该是二维矩阵的形式,每一列是一个特征,上面会有个列标题,每一行是一个样本。对Dataframe结构
- escape 方法返回一个可在所有计算机上读取的编码 String 对象。function escape(charString : Stri
- 有时需要在网上租用空间或数据库,Mysql成本低一些,所以想将sql server转成mysql……注意:在安装Mysql时要选择文字集为u
- 昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例涉及主要知识点:web是如何交互的requests库的get、post函数的应用r
- 本文实例讲述了Python编程实现的简单Web服务器。分享给大家供大家参考,具体如下:最近有个需求,就是要创建一个简到要多简单就有多简单的w
- 总括pandas的索引函数主要有三种:loc 标签索引,行和列的名称iloc 整型索引(绝对位置索引),绝对意义上的几行几列,起始索引为0i
- 在我们的网站建设中,为网站打造一个契合网站主题的个性化标志则是必需的,这直接关系到能否成功地塑造网站的品牌。这从某些角度看仍在网站推广的范畴
- 在之前一篇文章中我介绍了通过定义Response宏的方式来实现动态改变模板文件路径以实现主题功能: laravel实现模板主题功能,但后来我
- 给定一个字典,然后按键(key)或值(value)对字典进行排序。def dictionairy(): &nbs
- 一、简介Flask是一个轻量级的基于Python的web框架。本文适合有一定HTML、Python、网络基础的同学阅读。这份文档中的代码使用
- 图像轮廓Contours:轮廓轮廓是将没有连着一起的边缘连着一起。边缘检测检测出边缘,边缘有些未连接在一起。注意问题1.对象为二值图像,首先
- 前言自动化测试中我们存放数据无非是使用文件或者数据库,那么文件可以是csv,xlsx,xml,甚至是txt文件,通常excel文件往往是我们
- 今天在给元素注册事件的时候,使用addEventListener遇到了一个问题,这个好像之前也遇到过,觉得有必要总结一下,就是js函数作为参
- 原文网址:gradio.app/sharing-you…1.分享演示share=True通过在方法中设置,可以轻松公开