ES5新增 数组,字符串,对象方法
Posted article-record
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES5新增 数组,字符串,对象方法相关的知识,希望对你有一定的参考价值。
数组新增方法
迭代方法:
forEach()
map()
filter()
some()
every()
forEach()
// array.forEach(function (currentValue, index, arr));
// currentValue:数组当前项的值
// index: 数组当前项的索引
// arr:数组对象本身
var arr = [1, 2, 3];
arr.forEach(function(value, index, array) {
console.log(value); // 1, 2, 3
console.log(index); // 0, 1, 2
console.log(array); // [1, 2, 3] [1, 2, 3] [1, 2, 3]
});
filter()
// arr.filter(function (currentValue, index, array));
// filter() 方法创建了一个新数组,新数组中的元素是通过检查指定数组中符合条件的所有元素,主要用于筛选数组
// 它直接返回一个新的数组;
var newAarr = arr.filter(function (item, index) {
return item > 1;
});
console.log(newArr);
some()
// arr.some(function (currentValue, index, array){})
// some方法用于检测数组中的元素是否满足条件;返回的是一个布尔值
// 如果找到第一个满足条件的元素,则终止循环,不在继续查找
var flag = arr.some(function (item) {
return item === 1;
})
console.log(flag);
字符串新增方法
// trim() 会从一个字符串的两端删除空白返回一个新的字符串不影响原来的字符串
var str = ‘ andy ‘;
var str1 = str.trim();
console.log(str1); // andy
对象方法
Object.keys()
// 用于获取对象自身的所有属性;效果类似于for in,返回一个由属性名组成的数组
var obj = {name: ‘zs‘, age: 23}
var arr = Object.keys(obj); // ["name", "age"]
Object.definePropetry()
// Object.definePropetry(obj, prop, descriptor);
// obj:必须 目标对象
// prop: 必须 需定义或修改的属性的名字
// descriptor: 必须 目标属性所拥有的特性 传入一个对象
// value: 设置属性值,默认是undefined
// writable:值是否可以被重写, 默认false 不可以
// enumerable: 目标属性是否可以被枚举, 默认fasle
// configurable:目标属性是否可以删除或是否可以再次修改特性,默认false
bject.defineProperty(obj, ‘age‘, {
value: 24
});
Object.defineProperty(obj, ‘id‘, {
value: 1,
writable: false, // 不允许被修改
enumerable: true
})
Object.defineProperty(obj, ‘address‘, {
value: ‘china‘,
writable: false,
enumerable: true, // 是否可以被循环
configurable: false, // 不允许删除这个属性
})
obj.id = 2;
delete obj.address;
console.log(Object.keys(obj));
以上是关于ES5新增 数组,字符串,对象方法的主要内容,如果未能解决你的问题,请参考以下文章