问答详情
源自:4-3 [JavaScript]属性操作

key可以遍历出来阿,老师说不可以,是不是我理解错了

<script>

var obj={a:1,b:2,c:3}

//tostring in obj

obj.propertyIsEnumerable("toString");

var key;

for(key in obj){

console.log(key);

}

</script>


提问者:建_0001 2017-02-22 22:45

个回答

  • 慕九州4049775
    2018-05-23 22:08:17

    老师说的是tostring这个不能遍历出来.obj.propertyIsEnumerable("toString"); tostring不可枚举,所以不能遍历

  • qq_子谦_0
    2018-04-08 11:38:58

    for  ..in是用来遍历 数组或者对象的属性的。并不是用来遍历数组或者对象属性的值。这个Key是Obj的属性自然可以遍历出来

  • 慕粉3645932
    2017-05-23 17:44:11

    本来就可以遍历,只是用for…in遍历会存在问题,比如说遍历出来的顺序可能会被打乱等。而且你这样遍历出来的是关键字a,b,c 如果想遍历出值的话应该console.log(obj[key]);

  • feiger
    2017-04-01 15:18:36

    你问的好奇怪啊。。。key是obj的属性名啊,遍历的也是obj的属性,你说的key可以遍历出来什么意思。。。我也没听到老师说key可不可以遍历出来。。。

  • qq_我们都是大好青年_0
    2017-03-18 10:14:26

    console.log (obj.key)

  • 建_0001
    2017-02-23 23:15:03

    console没有keys这个方法.....

  • qq_GiannisAntet_0
    2017-02-23 15:55:58

    var key定义只是一个普通的局部变量,而不是关键字keys.直接用console.keys(obj)