用js如何输出一个对象的所有属性值

数组和对象是我们平时接触最多的数据结构,他们各有各的优势
先创建一个示例对象:

var obj = {
    name: '老兔叽',
    height: 213,
    age: 100
}

获取数组内元素的的方式:通过index下标的方式

*  例如:arr[1]是获取数组内下标为1的元素
*  注意:数组的下标是从`0`开始的,即下标为`0`元素是数组的第一个元素

js输出对象的属性

一、Object.keys()

该方法返回一个数组,数组内包括对象内可枚举属性以及方法名称。数组中属性名的排列顺序和使用 for…in 遍历该对象时返回的顺序一致。获取对象上已定义(可枚举)的属性和方法.

var arr = Object.keys(obj) // [ 'name', 'height', 'width' ]

二、for…in

方法返回一个指定对象所有自身属性的属性名(包括不可枚举属性但不包括Symbol值作为名称的属性)组成的数组。

for … in 循环返回的值都是数据结构的 键值名。
遍历对象返回的对象的key值,遍历数组返回的数组的下标(key)。
for … in 循环不仅可以遍历数字键名,还会遍历原型上的值和手动添加的其他键。如——例3
特别情况下, for … in 循环会以任意的顺序遍历键名
总结一句: for in 循环特别适合遍历对象。

输出对象内的属性名:

for(let key in obj){ 
	console.log('key:', key);
} // name,height,width

输出对象内的属性值:

for(let key in obj){ 
	console.log('value:', obj[key]);
} // aaa,187,111

四、for…of

for of 循环用来获取一对键值对中的值,而 for…in 获取的是键名
一个数据结构只要部署了 Symbol.iterator 属性, 就被视为具有 iterator接口, 就可以使用 for of循环。
总结:如果只需要获取可枚举属性,那么Object.keys()或for…in循环迭代即可
(Object.getOwnPropertyNames()也可以获取到原型链上的可枚举属性,不过需要通过hasOwnProperty()方法过滤掉不可枚举属性)。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值