zoukankan      html  css  js  c++  java
  • JavaScript对象属性

    JavaScript对象的属性有两类:数据属性和访问器属性

    数据属性

    数据属性有四个特性,分别为:

    1. [[value]]属性的值
    2. [[writeable]]属性是否可以修改
    3. [[enumerable]]属性是否可枚举
    4. [[configurable]]属性是否可配置,包括是否可删除,是否可修改属性的特性,是否可修改为访问器属性

    通过一般方式默认的特性为undefined,true,true,true。通过defineProperty方式默认的特性为undefined,false,false,false。

    注:如果通过defineProperty的操作未明确指定configurable为true,则属性的操作将受到限制(包括不能被修改,不能被删除,不能修改特性,不能修改为访问器属性)

    访问器属性

    访问器属性有四个特性,分别为:

    1. [[get]]属性的值
    2. [[set]]属性是否可以修改
    3. [[enumerable]]属性是否可枚举
    4. [[configurable]]属性是否可配置,包括是否可删除,是否可修改属性的特性,是否可修改为数据属性

    通过一般方式默认的特性为undefined,undefined,true,true。通过defineProperty方式默认的特性为undefined,undefined,false,false。

    注:如果通过defineProperty的操作未明确指定configurable为true,则属性的操作将受到限制(包括不能被修改,不能被删除,不能修改特性,不能修改为数据属性)

    定义属性:

    Object.defineProperty(对象,属性名称,属性描述符)
    获取属性特性(属性描述符)
    Object.getOwnProperyDescriptor(对象,属性名称)

    自身属性

    通过getOwnPropertyNames可以获取自身属性包括可枚举和不可枚举
    for..in或者Object.keys可以获取自身以及原型链上的可枚举属性,然后通过hasOwnProperty可以获取自身的可枚举属性

    参考:

    • JavaScript高级程序设计6.1理解对象
    • nodejs包merge-descriptors

    个人博客地址 :http://blog.yangqiong.com.cn/dui-xiang-shu-xing/

  • 相关阅读:
    Access数据库连接与Repeater数据控件绑定
    类型空间
    C# ico
    Jackson 框架,轻易转换JSON
    转 Android之项目推荐使用的第三方库,有助于快速开发,欢迎各位网友补充
    天气时段规定
    plupload
    MongoDatabase 数据访问助手类
    android开发教程21篇(版主强烈推荐,几乎每一篇都是精华教程
    Android
  • 原文地址:https://www.cnblogs.com/yangqionggo/p/4924806.html
Copyright © 2011-2022 走看看