一、JSON对象
var str1 = '{"name": "MONICX", "age": 18}'; var obj1 = {"name": "MONICX", "age": 18}; // JSON字符串转换成对象 var obj = JSON.parse(str1); // 对象转换成JSON字符串 var str = JSON.stringify(obj1);
二、Date对象
日期的对象,在JS中通过Date对象来表示一个时间
创建对象
创建一个当前的时间对象
var d = new Date();
创建一个指定的时间对象
var d = new Date("月/日/年 时:分:秒");
getDate() - 当前日期对象是几日(1-31) getDay() - 返回当前日期对象时周几(0-6) - 0 周日 - 1 周一 。。。 getMonth() - 返回当前日期对象的月份(0-11) - 0 一月 1 二月 。。。 getFullYear() 从 Date 对象以四位数字返回年份。 getHours() 返回 Date 对象的小时 (0 ~ 23)。 getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。 getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。 getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。 getTime() - 返回当前日期对象的时间戳 - 时间戳,指的是从1970年月1日 0时0分0秒,到现在时间的毫秒数 计算机底层保存时间都是以时间戳的形式保存的。 Date.now() - 可以获取当前代码执行时的时间戳
例子:
// 编写代码,将当前日期按“2017-12-27 11:11 星期三”格式输出。 const WEEKMAP = { 0: "星期日", 1: "星期一", 2: "星期二", 3: "星期三", 4: "星期四", 5: "星期五", 6: "星期六", }; function showTime() { var d1 = new Date(); var year = d1.getFullYear(); var month = d1.getMonth() + 1; var day = d1.getDate(); var hour = d1.getHours(); var minute = d1.getMinutes() < 10 ? "0"+d1.getMinutes() :d1.getMinutes(); var week = WEEKMAP[d1.getDay()]; // 0~6的星期 var dateStr = ` ${year}-${month}-${day} ${hour}:${minute} ${week} `; console.log(dateStr) }
三、Math对象
Math属于一个工具类,它不需要我们创建对象,它里边封装了属性运算相关的常量和方法
我们可以直接使用它来进行数学运算相关的操作。
方法: Math.PI - 常量,圆周率 Math.abs(x) - 绝对值运算 Math.ceil(x) - 向上取整 Math.floor(x) - 向下取整 Math.round(x) - 四舍五入取整 Math.random() - 生成一个0-1之间的随机数 - 生成一个x-y之间的随机数 Math.round(Math.random()*(y-x)+x); Math.pow(x,y) - 求x的y次幂 Math.sqrt(x) - 对一个数进行开方 Math.max(x,y) - 求多个数中最大值 Math.min(x,y) - 求多个数中的最小值
四、正则对象(RegExp)
正则用来定义一些字符串的规则,程序可以根据这些规则来判断一个字符串是否符合规则,
也可以将一个字符串中符合规则的内容提取出来。
创建正则表达式
var reg = new RegExp("正则","匹配模式");
var reg = /正则表达式/匹配模式
var reg1 = new RegExp('[a-zA-Z][a-zA-Z0-9]{5,11}') var reg2 = /[a-zA-Z][a-zA-Z0-9]{5,11}/
语法: 匹配模式: i:忽略大小写 g:全局匹配模式 设置匹配模式时,可以都不设置,也可以设置1个,也可以全设置,设置时没有顺序要求 正则语法 | 或 [] 或 [^ ] 除了 [a-z] 小写字母 [A-Z] 大写字母 [A-z] 任意字母 [0-9] 任意数字 方法: test() 可以用来检查一个字符串是否符合正则表达式 如果符合返回true,否则返回false
正则三个坑
1. 不要加空格。
2. 全局模式g不要乱用。
扫描二维码关注公众号,回复:
1576476 查看本文章
3. test()不传值相当于传undefined,会按照'undefined'处理。