时间对象
四种时间创建方法
// 普通创建
var myData = new Date();
console.log(myData);// 传参创建 年月日 时分秒 毫秒
var myData1 = new Date(2019,10,1,9,10,20,30);
console.log(myData1);// 字符串创建 年月日 时分秒 毫秒
var myData2 = new Date("2019/10/1 9:10:40");;
console.log(myData2);// 时间戳创建 从1970年1月1日0分0秒到现在的总毫秒数,一共10个0
var myData3 = new Date(1560000000000);
console.log(myData3);
获取年月日星期
var myDate = new Date(); // 获取年 月 日 星期var year = myDate.getFullYear();console.log("年份:"+ year);// 月份输出为0-11.0代表1月var mon = myDate.getMonth()+1;console.log("月份:" + mon); //正常输出var da = myDate.getDate();console.log("日期是:" + da);// 周几输出为0-6.0代表周日var day = myDate.getDay()+1;console.log("周:" + day);
note:
- 月份输出为0-11.0代表1月
- 周几输出为0-6.0代表周日
获取时 分 秒 毫秒
var myDate = new Date(); // 获取时 分 秒 毫秒// 0-23var hour = myDate.getHours();console.log("时:"+ hour);var min = myDate.getMinutes();console.log("分:" + min); var mesc = myDate.getSeconds();console.log("秒:" + mesc);var ms = myDate.getMilliseconds();console.log("毫秒:" + ms);
获取完整时间和日期
toLocaleDateString()
toLocaleTimeString()
// 获取完整时间和日期
var a = new Date().toLocaleDateString(); //日期
var b = new Date().toLocaleTimeString(); //时间var c = new Date(1560000000000).toLocaleTimeString(); //时间
console.log(a);
console.log(b);
console.log(c);
时间戳
// 时间戳var a = new Date().getTime(); //毫秒var b = parseInt(new Date().getTime()/1000); //秒,转换为整型console.log(a);console.log(b);
数字方法
数字取整
math对象,用于执行数学任务
// 数字取整var a = 3.4445245;var b = parseInt(a); //转为整型console.log(b); //3console.log(Math.sin(b)); //0.1411200081var c = Math.floor(a); //向下取整var d = Math.ceil(a); //向上取整var e = Math.round(a); //四舍五入取整console.log(c); //3console.log(d); //4 console.log(e); //3
取随机数
// 随机数var a = Math.random(); //0-1之间的随机数(不包括1)console.log(a); var b = Math.random()*100; //0-100之间的随机数(不包括100)console.log(b);var c = Math.ceil(Math.random()*3); //0.1.2.3之间的随机数console.log(c);var d = Math.floor(Math.random()*3); //0.1.2之间的随机数console.log(d);
给定范围随机数
// 给定范围的随机数
var a = Math.random() + 2; //2---3之间的随机数,(不包括3)
console.log(a); //2.0-3.0之间的随机数(不包括3)// 2-5之间的随机数(包括2,包括5)
// 括号内(5-2+1)表示范围,+2表示从2开始
// (最大数 - 最小数 + 1) + 最小值
var b = Math.floor(Math.random() * (5 - 2 + 1) + 2); //2-5之间的随机数(包括2,包括5)
console.log(b); //2-5之间的随机数(包括2,包括5)
字符串方法
字符串查找
- 字符串从0位置开始
- str.indexOf(“o”); //查找第一个o的位置
- str.lastIndexOf(“o”); //查找最后一个o的位置
- str.charAt(4); //查找第5个字符
- str.lastIndexOf(“m”); //查找不存在的字符,返回-1
// 字符串方法// 字符串查找 0 1 2 3 4 5 6 7 8 9(从0开始)var str = "hello world";var a = str.indexOf("o"); //查找第一个o的位置var b = str.lastIndexOf("o"); //查找最后一个o的位置var c = str.charAt(4); //查找第5个字符var d = str.lastIndexOf("m"); //查找不存在的字符,返回-1
字符串替换
- str.replace(“o”, “O1234”); //替换第一个o为O1234
- str.replace(/o/g, “O1234”); //全局匹配替换所有的o为O1234
- str.replace(/o/i, “O1234”); //不区分大小写,匹配替换第一个o为O1234
- str.replace(/o/gi, “O1234”); //不区分大小写 + 全局匹配替换所有的o为O1234
// 字符串替换
var str = "hello world";
var a = str.replace("o", "O1234"); //替换第一个o为O1234
console.log(a); //hellO1234 worldvar b = str.replace(/o/g, "O1234"); //全局匹配替换所有的o为O1234
var c = str.replace(/o/i, "O1234"); //不区分大小写,匹配替换第一个o为O1234
var d = str.replace(/o/gi, "O1234"); //不区分大小写 + 全局匹配替换所有的o为O1234
console.log(b); //hellO1234 wOrld
console.log(c); //hellO1234 world
console.log(d); //hellO1234 wOrld
截取指定下标的字符
- subString(截取的字符串)
- str.substring(0, 5); //截取0-5之间的字符串(包头不包尾)
- str.substring(5); //截取5-最后之间的字符串
// 截取指定下标的字符串var str = "hello world";var a = str.substring(0, 5); //截取0-5之间的字符串(包头不包尾)var b = str.substring(5); //截取5-最后之间的字符串console.log(a); //helloconsole.log(b); // world
截取指定个数的字符串
- substr(开始的下标,截取的个数)
- 下标接受负值,表示从后往前截取
- str.substr(4,8); //从第四位开始截取8个字符
- str.substr(-4,8); //从倒数第四位开始截取8个字符
// 截取指定个数的字符串// substr(开始的下标,截取的个数)// 下标接受负值,表示从后往前截取var b = str.substr(4,8); //从第四位开始截取8个字符var c = str.substr(-4,8); //从倒数第四位开始截取8个字符console.log(b); //o worldconsole.log(c); //orld
字符串分割
- split()把一个字符串分割成字符串数组
- str.split(" "); //以空格为分隔符,分割字符串
- str.split(“0”, 2); //以0为分隔符,分割字符串,限制分割的个数为2
- 分割后的字符串可以当作数组使用
// 字符串分割var a = str.split(" "); //以空格为分隔符,分割字符串var b = str.split("o"); //以o为分隔符,分割字符串var c = str.split("0", 2); //以0为分隔符,分割字符串,限制分割的个数为2var d = str.split("11");console.log(a); // //["hello", "world"]console.log(b); //["hell", " w", "rld"]console.log(c); //["hell", " w", "rld"] console.log(c[0]); //hell
字符串放数组使用
- str.charAt(0); //获取第一个字符
- str[0]; //获取第一个字符
// 字符串当作数组使用var a = str.charAt(0); //获取第一个字符var b = str[0]; //获取第一个字符for (var i = 0; i < str.length; i++) {document.write(str[i] + "<br>"); //获取每一个字符}
案例
将输入的内容的首字母转成大写的三种写法
var xm = "xiaoMing";var e = xm[0];console.log(e); var f = e.toUpperCase(); console.log(f); var g = xm.replace(e,f); //替换第一个字符为大写console.log(g); //XiaoMing// 简便写法,两种var XM1 = xm.replace(xm.charAt(0),xm.charAt(0).toUpperCase()); //替换第一个字符为大写var XM2 = xm.replace(xm[0],xm[0].toUpperCase()); //替换第一个字符为大写console.log(XM1); //XiaoMingconsole.log(XM2); //XiaoMing