内置对象
arguments对象
存储所有传递过来的实参
是一个伪数组:具有length属性,按索引方式储存数据,不具有数组的push、pop等方法
Math对象
非构造函数
圆周率:Math.PI
最大值:Math.max()
绝对值:Math.abs()
向下取整:Math.floor()
向上取整:Math.ceil()
四舍五入就近取整:Math.round()
随机数:Math.random()
[0,1)内的随机小数
得到一个两数之间的随机整数,包括两个数在内:
function getRandomIntInclusive(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值
}
Date对象
是构造函数,必须使用new
当前时间:var dObj = new Date()
固定时间:var dObj1 = new Date(参数)
参数写法
数字型:(20xx, x, x) 字符串型:('20xx-x-x x:x:x')
日期时间格式化
获取当年:dObj.getFullYear()
(20xx)
获取当月:dObj.getMonth()
(0-11)
获取当日:dObj.getDate()
(1-31)
获取周几:dObj.getDay()
(0-6:周日到周六)
格式化星期几:
var date = new Date();
var day = date.getDay();
var arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
console.log(arr[day]);
获取当前小时:dObj.getHours
获取当前分钟:dObj.getMinutes
获取当前秒钟:dObj.getSeconds
封装函数返回当前时间并补0:
function getTimer() {
var time = new Date();
var h = time.getHours();
h = h < 10 ? '0' + h : h;
// 分秒重复操作,略
return h + ':' + m + ':' + s;
}
console.log(getTimer())
获得时间戳(距1970.1.1总毫秒数)
1.通过valueOf()
/getTime()
:
var date = new Date();
console.log(date.valueOf());
console.log(date.getTime());
2.常用的简单写法
var date1 = +new Date();
console.log(date1);
3.H5新增
console.log(Date.now());
倒计时
function countDown(time) {
var nowTime = +new Date();
var inputTime = +new Date(time);
var times = (inputTime - nowTime) / 1000;
var d = parseInt(times / 60 / 60 / 24);
d = d < 10 ? '0' + d : d;
var h = parseInt(times / 60 / 60 % 24);
h = h < 10 ? '0' + h : h;
var m = parseInt(times / 60 % 60);
m = m < 10 ? '0' + m : m;
var s = parseInt(times % 60);
s = s < 10 ? '0' + s : s;
return d + '天' + h + '时' + m + '分' + s + '秒';
}
console.log(countDown('2024-1-1 0:0:0'));
Array对象
见数组部分
String对象
字符串长度:.length
根据字符返回位置
indexOf('要查找的字符', [起始的位置])
:返回指定内容在元字符串中的位置,如果不存在就返回-1,开始的位置是index索引号
lastIndexOf()
:从后往前
求某个字符出现的位置以及次数:
var str = '被检索的字符串'
var index = str.indexOf('字符');
var num = 0;
while (index !== -1) {
console.log(index);
num++;
index = str.indexOf('字符', index +1);
}
console.log('出现了' + num + '次')
根据位置返回字符
charAt(index)
:返回指定位置的字符(index索引号)
charCodeAt(index)
:返回指定位置处字符的ASCII码
str[index]
:返回指定位置处字符,H5新增
统计所有字符出现次数及出现次数最多的字符:
var str = '被统计的字符串';
var o = {};
for (var i = 0; i < str.length; i++) {
var chars = str.charAt(i);
if (o[chars]) {
o[chars]++;
} else {
o[chars] = 1;
}
}
console.log(o);
var max = 0;
var ch = '';
for (var k in o) {
if (o[k] > max) {
max = o[k];
ch = k;
}
}
console.log(ch + '最多,出现了' + max + '次')
拼接和截取字符串
concat(str1, str2, str3...)
:拼接字符串,等效于+,+更常用
substr(start, length)
:截取
slice(start, end)
和substring(start, end)
:截取,略,详见MDN
var str = '被截取的字符串';
console.log(str.substr(4, 3)); // '字符串'
替换字符串
replace('被替换的字符', '替换为的字符')
:只会替换第一个字符,替换全部用while循环
字符串转换为数组
split('分隔符')
:join('分隔符')
的反向操作