前言
ES5的新特性
数组
遍历
- forEach()函数中的return不会终止循环
value
:当前的遍历的值
index
:当前的遍历的索引
this
:数组本身
1 2 3
| 数组对象.forEach(function (value, index, this) { ... });
|
筛选数组
- filter()函数返回的是一个新数组,用来筛选数组
- 先将值筛选,每次都将filter()函数的返回值插入到新数组
value
:当前的遍历的值
index
:当前的遍历的索引
this
:数组本身
1 2 3
| let 新数组对象 = 数组对象.filter(function (value, index, this) { return value == "" });
|
查找元素是否存在
- some()函数返回的是一个布尔值,用来查找数组中是否存在某个元素
- 如果找到了第一个匹配的元素,会立即终止循环,并返回布尔值
- some()函数中return返回true会终止循环,return返回false会继续循环
value
:当前的遍历的值
index
:当前的遍历的索引
this
:数组本身
1 2 3
| let 是否存在 = 数组对象.some(function (value, index, this) { return value == "" });
|
字符串
去除字符串两侧空白字符
1
| let 新字符串对象 = 字符串对象.trim();
|
对象
新增或修改对象的属性
value
:指定属性的值,如果属性不存在就创建属性,如果属性存在就修改属性
writable
:是否允许重写,默认值为false不允许重写,即便是有其他修改属性值的代码也不会修改成功
enumerable
:是否允许被枚举,默认值为false不允许被枚举,不会被Object.keys()
遍历
configurable
:是否允许被删除或被再次修改特性,默认值为false不允许被删除或被再次修改特性,不会被delete 对象名.属性名
删除,不会再次通过Object.defineProperty()
修改对象的属性的特性
1 2 3 4 5 6
| Object.defineProperty(对象名, "属性名", { value: "属性值" writable: false enumerable: false configurable: false });
|
获取对象所有的属性名
完成
参考文献
哔哩哔哩——黑马前端