ES5常用api
String
trim()去除字符创两侧空白
// 删除一个字符串两端的空白字符,返回一个去除空白新的字符串。 let str=' testStr '; console.log("+" + str + "+"); // + fff + console.log("+" + str.trim() + "+"); // +fff+
Date
now() 静态方法,获取当前时间戳
// 1970.7.1到现在的毫秒数 console.log(Date.now());//1500799156134 // toJSON()格林时间(德国) 与我们的时间正好相反 console.log(new Date().toJSON()); // 2017-07-23T08:42:13.050Z console.log(new Date().toJSON().slice(0,10)); // 2017-07-23
Number
toFixed()
// 小数后取位数,数字代表取到第几位,四舍五入返回小数 let num1 = new Number(1.234); console.log(num1.toFixed(1)); // 1.2 let num2 = new Number(4.645372); console.log(num2.toFixed(2)); // 4.65 console.log(Math.round(13.89)); // 14 四舍五入返回整数
toPrecision()
// 以指定的精度返回该数值对象的字符串表示。 precision 是 1 ~ 21 之间 let num=100000000000000000000; console.log(num.toPrecision(7)); // 1.000000e+20 console.log(num.toPrecision(3)); // 1.00e+20
JAON对象
parse()
// 将JSON字符串转换成JSON对象(JSON反序列化) let str = '[{"name":"test","age":"10"},{"name":"demo","age":"20"}]'; let json=JSON.parse(str); console.log(json[1].name); // demo
stringify()
将JSON对象转换成JSON字符串(JSON序列化) let arr = [ {"name": "test", "age":"10"}, {"name": "demo", "age":"20"}, ]; let str = JSON.stringify(arr); console.log(str); // '[{"name":"test","age":"10"},{"name":"demo","age":"20"}]'
Array
forEach() 循环遍历
let arr = [1, 2, 3, 4, 5, 7, 8, 9]; arr.forEach(function(value, index) { console.log(value); // 1,2,3,4,5,6,7,8,9 console.log(index); // 0,1,2,3,4,5,6,7,8 });
map() 返回一个修改过的新数组
let arr = [1, 2, 3, 4, 5]; let arr2 = arr.map(function(value) { return value * 2 + 1; }); console.log(arr2); // [3, 5, 7, 9, 11]
filter() 返回满足条件的元素数组
let arr = [1, 2, 3, 4, 5]; let arr2 = arr.filter(function(value) { return value > 2; }); console.log(arr2); // [3, 4, 5]
some() 判断数组元素是否满足条件,只要有符合的返回true
let arr = [1, 2, 3, 4, 5]; let arr2 = arr.some(function(value) { return value > 2; }); console.log(arr2); // true
every() 数组元素全部满足条件则返回true否则返回false
let arr = [1, 2, 3, 4, 5]; let arr2 = arr.every(function(value) { return value > 3; }); console.log(arr2); // false
indexOf() 返回匹配元素的索引值
let arr = [2, 5, 7, 3, 5]; console.log(arr.indexOf(5, "x")); // 1 ("x"被忽略) console.log(arr.indexOf(5, "3")); // 4 (从3号位开始搜索) console.log(arr.indexOf(4)); // -1 (未找到) console.log(arr.indexOf("5")); // -1 (未找到,因为5 !== "5")
lastIndexOf() 从字符串的末尾开始查找
let arr = [2, 5, 7, 3, 5]; console.log(arr.lastIndexOf(5)); // 4 // console.log(arr.lastIndexOf(5, 3)); // 1 (从后往前,索引值小于3的开始搜索) // console.log(aa.lastIndexOf(4)); // -1 (未找到)
reduce() 缩小迭代
let arr = [1,2,3,4,5]; let total = arr.reduce(function(last,now) { return last * now; }, 1); console.log(total); // 120
reduceRight() 右侧开始缩小迭代
let arr= [1,2,3,4,5]; let total = arr.reduceRight(function(last,now) { return last * now; }, 1); console.log(total); // 120
isArray() 判断变量是不是数组类型
Array.isArray(["3", "4"]); // true Array.isArray({"x": "y"}); // false
Function
bind(this,arg1,arg2)
function A(x){ this. x = x; } function B(y){ console.log(this.x + ":y=" + y ); } B.bind(new A(5),6)(); // 5:y=6