本篇文章我们来看看枚举属性的方法,文章中我们将主要学习如何使用forEach()、map()、filter()方法,下面我们就来看看具体的内容。
我们在上一篇文章中给大家介绍了关于JavaScript中Object.keys获取对象属性的方法,接下来我们就来看看JavaScript枚举属性的方法。
先来看一下常见的对象数据
var obj = { name: '张 三', age: 30, area: '北京' }通过forEach()枚举属性
forEach()是一个可用于数组的方法,但由于Object.keys()的返回值是一个数组,因此兼容性很好。
要枚举属性,请看如下描述。
Object.keys(obj).forEach(function(data) { console.log(data); })
执行结果
name age area
请注意,我们将函数定义为forEach()的参数。
通过这样描述,可以对每个属性执行任意函数。
顺便说一句,也可以使用像“obj [data]”这样的格式输出属性的值!
通过map()枚举属性
基本用法与forEach()相同,但它是一个作为数组返回值获取属性的函数。
请看下面的示例!
var result = Object.keys(obj).map(function(data) { return data; })
执行结果
["name", "age", "area"]
请注意map()参数中指定函数的内容。
通过filter()枚举属性
filter()和map()的用法几乎一样。
请看下面的示例
var result = Object.keys(obj).filter(function(data) { return data; })
执行结果
["name", "age", "area"]
在这个示例中,我们只是用filter()替换了map()部分,但执行结果是相同的。
filter()的特征是可以描述仅在满足特定条件时获取值的过程。
例如,“return data ==='name'”仅在属性具有“name”时才返回值。
如果使用filter(),例如只提取30岁以上的用户也会很容易。
以上是JavaScript的属性枚举方法有哪些的详细内容。更多信息请关注PHP中文网其他相关文章!