date对象 原文
UTC时间:世界标准时间
时间戳:时间戳是一个自增的整数,它表示从1970年1月1日零时整的GMT时区开始的那一刻,到现在的毫秒数。假设浏览器所在电脑的时间是准确的,那么世界上无论哪个时区的电脑,它们此刻产生的时间戳数字都是一样的,所以,时间戳可以精确地表示一个时刻,并且与时区无关。
var d = new Date(1435146562875);//括号里的为时间戳
d.toLocaleString(); // '2015/6/24 下午7:49:22',本地时间(北京时区+8:00),显示的字符串与操作系统设定的格式有关
d.toUTCString(); // 'Wed, 24 Jun 2015 11:49:22 GMT',UTC时间,与本地时间相差8小时
注意:
月份是从0开始的,也就是0对应1月,1对应2月
var d = new Date();
var n = d.getTime();//时间戳
+new Date是 new Date().getTime()的简写
正则对象 原文
- 在正则表达式中,如果直接给出字符,就是精确匹配。用\d可以匹配一个数字,\w可以匹配一个字母或数字
- 用*表示任意个字符(包括0个),用+表示至少一个字符,用?表示0个或1个字符,用{n}表示n个字符,用{n,m}表示n-m个字符
- \s可以匹配一个空格(也包括Tab等空白符)
- 要做更精确地匹配,可以用[]表示范围
- A|B可以匹配A或B
- ^表示行的开头,^\d表示必须以数字开头。
$表示行的结束,\d$表示必须以数字结束。
使用
- JavaScript有两种方式创建一个正则表达式:
- 第一种方式是直接通过/正则表达式/写出来
var re1 = /ABC\-001/;
- 第二种方式是通过new RegExp('正则表达式')创建一个RegExp对象。
var re2 = new RegExp('ABC\-001');
- RegExp对象的test()方法用于测试给定的字符串是否符合条件。
re.test('010 12345'); // false
- 用正则切分字符串
'a,b;; c d'.split(/[\s\,\;]+/); // ['a', 'b', 'c', 'd']
- 使用正则分组
var re = /^(\d{3})-(\d{3,8})$/;
re.exec('010-12345'); // ['010-12345', '010', '12345']
re.exec('010 12345'); // null
如果正则表达式中定义了组,就可以在RegExp对象上用exec()方法提取出子串来。
exec()方法在匹配成功后,会返回一个Array,第一个元素是正则表达式匹配到的整个字符串,后面的字符串表示匹配成功的子串。
exec()方法在匹配失败时返回null。
json对象 原文
- 序列化
var s = JSON.stringify(xiaoming); - 反序列化
拿到一个JSON格式的字符串,我们直接用JSON.parse()把它变成一个JavaScript对象: