美文网首页
对象的属性的可枚举性和所有性

对象的属性的可枚举性和所有性

作者: skoll | 来源:发表于2022-06-17 11:30 被阅读0次

    简介

    1 .从ES5开始,三种原生方法可以列出或者枚举对象的属性

    找全部属性方法1,不是遍历方法 for .. in

    1 .一次循环访问一个对象的及其原型链中的所有可枚举,除了symbol的属性

    for(i in Math){
            console.log(i)
           }
    //这个会有一些方法,所以什么都不会打印出来,方法不是可枚举的,所以没有是吧
    
    for(i in [1,2,3])
    //1,2,3
    

    2 .关键词.可枚举,极其原型链,还会排除symbol的

    找全部属性方法2,不是遍历 Object.keys()

    1 .返回对象自身,没有原型链的,可枚举的属性的数组
    2 .关键词,没有原型链,可枚举,数组

    找全部属性方法3,不是遍历 Object.getOwnPropertyNames(o)

    1 .对象自身,不包括原型链,所有属性的名称的数组
    2 .关键,不包括原型链,不可枚举的也能找出来
    3 .Object.getOwnPropertyNames(Math) 这个就可以找出对象的方法


    image.png
    image.png

    可枚举

    1 .设置属性的时候enummable是true
    2 .只会控制for in,keys,json.stringify三个方法里面,别的都不受他控制

    原型链

    image.png

    相关文章

      网友评论

          本文标题:对象的属性的可枚举性和所有性

          本文链接:https://www.haomeiwen.com/subject/uiuxvrtx.html