ES5
数组方法
// 遍历数组[1, 2, 3, 4, 5].forEach(function (v, i, a) { console.log("index:" + i + ",value:" + v)})// 对数组中的每个元素进行操作,然后返回var a = [1, 2, 3, 4, 5].map(function (v, i, a) { return v = v*v;})// filter过滤数组var a = [1, 2, 3, 4, 5].filter(function (v, i, a) { return i % 2 == 0;})// 是否有满足条件的元素(any)var flag = [1, 2, 3, 4, 5].some(function (v, i, a) { // 当找到第一个满足条件的元素后,就停止循环了 return v < 3;})// 是否全部满足条件(all)var flag = [1, 2, 3, 4, 5].every(function (v, i, a) { return v > 0;})
字符串方法
// 去除前后空格" das ".trim()
对象方法
// 获取对象属性名列表Object.keys({name:'cxk',age:'18'})
Object.defineProperty
Object.defineProperty(对象,修改或新增的属性名,{ value:修改或新增的属性的值, writable:true/false,//如果值为false 不允许修改这个属性值 enumerable: false,//enumerable 如果值为false 则不允许遍历 configurable: false //configurable 如果为false 则不允许删除这个属性 属性是否可以被删除或是否可以再次修改特性})
var obj = { name:'cxk'}Object.defineProperty(obj,'name',{ writable:false, enumerable:true, configurable:false})obj.name= 'jntm'; //无效for (let i in obj){ // 无法枚举到name console.log(i)}// 无法再重新修改特性Object.defineProperty(obj,'name',{ configurable:true})