js之本地对象(Array/Date)

一、Array类
1.创建Array对象
(1)aValues = new Array();
(2)aValues = new Array(10);
(3)aValues = new Array("red","green","blue");

Js代码 复制代码
  1. aValues[3]="purple";//加一个到数组中   
  2. aValues[aValues.length]="yellow";   
  3. aValues[25]="gray";//5...24,放的是null  
aValues[3]="purple";//加一个到数组中
aValues[aValues.length]="yellow";
aValues[25]="gray";//5...24,放的是null

说明:数组最多可以放4294967295项。
(4)用字面量定义数组,使用方括号并用逗号分隔,如:

Js代码 复制代码
  1. var aColors = ["red","green","blue"];//方括号暗示把其中的值放大Array对象中   
  2. sColors[aColors.length]="purple";  
var aColors = ["red","green","blue"];//方括号暗示把其中的值放大Array对象中
sColors[aColors.length]="purple";


2.方法
(1)toString()
(2)valueOf()
例:

Js代码 复制代码
  1. var aColors=["red","green","blue"];   
  2. alert(aColors.toString());//outputs "red,green,blue"   
  3. alert(aColors.valueOf());//outputs "red,green,blue"  
var aColors=["red","green","blue"];
alert(aColors.toString());//outputs "red,green,blue"
alert(aColors.valueOf());//outputs "red,green,blue"


(3)toLocalString():通过调用每个数组项的toLocalString()方法来构成串

Js代码 复制代码
  1. var aColors=["red","green","blue"];   
  2. alert(aColors.toLocaleString());//outputs "red,green,blue"  
var aColors=["red","green","blue"];
alert(aColors.toLocaleString());//outputs "red,green,blue"


(4)join():连接字符串值,只有一个参数,即数组项之间使用的字符串。

Js代码 复制代码
  1. var aColors=["red","green","blue"];   
  2. alert(aColors.join("|"));//outputs "red|green|blue"  
var aColors=["red","green","blue"];
alert(aColors.join("|"));//outputs "red|green|blue"


(5)split():把字串转换成数组,如:

Js代码 复制代码
  1. var sColors ="red|green|blue";   
  2. var aColors = sColors.split("|");   
  3. var sColor = "red";   
  4. alert(sColor.split(""));//空字符作为分隔符,输出为"r,e,d"  
var sColors ="red|green|blue";
var aColors = sColors.split("|");
var sColor = "red";
alert(sColor.split(""));//空字符作为分隔符,输出为"r,e,d"


(6)concat():参数将被附加大数组末尾,返回新的Array

Js代码 复制代码
  1. var aColors = ["red","green","blue"];   
  2. var aColors2 = aColors.concat("yellow","purple");   
  3. alert(aColors2.toString()); //outputs "red,green,blue,yellow,purple"  
var aColors = ["red","green","blue"];
var aColors2 = aColors.concat("yellow","purple");
alert(aColors2.toString()); //outputs "red,green,blue,yellow,purple"


(7)slice():返回的是具有特定项的新数组,接受一个或两个参数,即要提取的项的起始位置和结束位置。

Js代码 复制代码
  1. var aColors = ["red","green","blue","yellow","purple"];   
  2. var aColors2 = aColors.slice(1);   
  3. var aColors3 = aColors.slice(1,4);   
  4. alert(aColors2.toString());//outputs "green,blue,yellow,purple"   
  5. alert(aColors3.toString());//outputs "green,blue,yellow"  
var aColors = ["red","green","blue","yellow","purple"];
var aColors2 = aColors.slice(1);
var aColors3 = aColors.slice(1,4);
alert(aColors2.toString());//outputs "green,blue,yellow,purple"
alert(aColors3.toString());//outputs "green,blue,yellow"


(8)push():在Array结尾添加一个或多个项
(9)pop():删除最后一个数据项(length-1),返回它作为函数值。
(10)shift():将删除数组中的第一个项,将其作为函数值返回。
(11)unshift():它把一个项放大数组的第一个位置。
(12)reverse():颠倒数组项的顺序。
(13)sort():根据数组项的值按升序为它们排序。
  默认的sort()按字符编码排序的。如:

Js代码 复制代码
  1. var testArray=[3,324,5345,6546,134,5654,665];   
  2. testArray.sort();   
  3. alert(testArray);  
var testArray=[3,324,5345,6546,134,5654,665];
testArray.sort();
alert(testArray);


结果是:输出结果是:134  3  324  5345  5654  6546  665
  按大小排序:

Js代码 复制代码
  1. var testArray=[3,324,5345,6546,134,5654,665];   
  2. testArray.sort(function(a,b){return a-b;});   
  3. alert(testArray);  
var testArray=[3,324,5345,6546,134,5654,665];
testArray.sort(function(a,b){return a-b;});
alert(testArray);


  这里传递一个比较函数给sort,比较函数的逻辑是:如果两参数的差值小于0,则表示a必须出现在b前面,否则在b后面。
输出结果是:3  134  324  665  5345  5654  6546,
(14)splice():arg1为起始位置,arg2为要删除的数组项个数,其它为要插入的值。

Js代码 复制代码
  1. arr.splice(0,2);//将删除数组arr中的前两项。   
  2. arr.splice(2,0,"red","green");//将大位置2处插入"red","green"   
  3. arr.splic(2,1,"red","green");//将删除数组arr中位置2处的项,然后在位置2处插入"red"和"green"。  
arr.splice(0,2);//将删除数组arr中的前两项。
arr.splice(2,0,"red","green");//将大位置2处插入"red","green"
arr.splic(2,1,"red","green");//将删除数组arr中位置2处的项,然后在位置2处插入"red"和"green"。


二、Date对象
与Java一样,ECMAScript把日期存储为距离UTC时间1970年1月1日凌晨12点的毫秒数。UTC是Universal Time Code,即通用时间代码(也叫做Greenwich Mean Time,格林尼治标准时间)的缩写,是所有时区的基准标准时间。
1.日期格式
(1)mm/dd/yyyy(例如01/01/2009)
(2)mmmm dd.yyyy(例如January 12,2009)
2.定义
(1)var d = new Date();
(2)var d = new Date(0);//只声明距离 1970年1月1日凌晨12点的毫秒数
(3)var d = new Date(Date.parse("January 10,2009"));
(4)var d = new Date(Date.UTC(2009,1,5,13,5));//要设置2009年2月5号下午1:05分
(5)var d = new Date(2009,2,5);//直接声明UTC()方法接受的参数
Date类是少有的几个覆盖了toString()方法和valueOf()方法的类之一。valueOf()方法返回日期的毫秒表示,toString()方法返回由实现特定的字符串,采用人们可读懂的格式。因此,不能依赖toString()方法执行任何一致的操作
3.方法
(1)toDateString()——以实现的特定的格式显示Date的日期部分(即只有月、日和年);
(2)toTimeString()——以实现的特定的格式显示Date的时间部分(即小时、分、秒和时区);
(3)toLocaleString()——以地点特定的格式显示Date的日期和时间;
(4)toLocaleDateString()——以地点特定的格式显示Date的日期部分;
(5)toLocaleTimeString()——以地点特定的格式显示Date的时间部分;
(6)toUTCString()——以实现特定的格式显示Date的UTC时间。
(7)getTimezoneOffset——说明某个时区与UTC时间的关系,该方法返回当前时区比UTC提前或落后的分钟数。
还可用getTimezoneOffset()方法判断时区使用的是否是夏令时。实现这一点需要创建任意年份的 1月1日的日期,然后创建该年份的 7月1日的日期,比较时区偏移量。如果分钟数不等,说明该时区使用的是夏令时,如果相等,则该时区使用的不是夏令时。

Js代码 复制代码
  1. var d1 = new Date(2009,0,1);   
  2. var d2 = new Date(2009,6,1);   
  3. alert(d1.getTimezoneOffset()!=d2.getTimezoneOffset());  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值