JS 遍历对象,获取key 、value 的⼏种⽅法
1. 使⽤for…in 为什么使⽤Object.prototype.hasOwnproperty.call(person, key)⽽不是person.prototype.hasOwnproperty(key):因为hasOwnproperty 在js⾥并不是敏感词,因此可能当前对象有⼀个属性名叫hasOwnproperty ,所以这⾥直接调原型链上的hasOwnproperty ⽅法
call(person, key)的两个参数,第⼀个参数是this的指向对象,第⼆个参数是⼊参
2. 使⽤.keys()lodash有哪些方法
3. 使⽤lodash 库的map
平时使⽤lodash 库⽐较多,最近发现lodash ⾥map的迭代函数第⼆个参数是可以直接取到key的,原⽣js的map函数是不⽀持的。4. 使⽤ies()let  person = {  name : '张三',  age : '21',}for (let  key in  person ){  if (Object .prototype .hasOwnProperty .call (person , key )){    console .log ('key-value',key ,person [key ])  }}//key-value name 张三//key-value age 21
1
2
3
45
6
7
8
9
10
11
12let  person = {  name : '张三',  age : '21',}Object .keys (person ).map (key => {  console .log (key ) })//name //age //Object.keys()返回⾃⾝的所有可枚举属性的数组:[name,age]//Object.values()返回⼀个⾃⾝的所有可枚举属性值的数组:[张三,21]
1
2
3
4
5
6
7
89
10
11
12import  _ from  'lodash'let  person = {  name : '张三',  age : '21',}_.map (person , (item , key ) => { console .log ('key-value',key ,item )})//key-value name 张三//key-value age 21
1
2
3
4
5
6
7
8
9
10
11
const  object1 = {  a : 'somestring',  b : 42};for  (const  [key , value ] of  Object .entries (object1)) {  co
nsole .log (`${key }: ${value }`);}// expected output:// "a: somestring"// "b: 42"// order is not guaranteed 12345678910111213

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。