zoukankan      html  css  js  c++  java
  • 对象的数据属性(Object)

    value: 对象属性的默认值,默认值为undefined

    configurable: 能否使用delete、能否需改属性特性、或能否修改访问器属性、,false为不可重新定义,默认值为true

    enumerable: 对象属性是否可通过for-in循环,flase为不可循环,默认值为true

    writable: 对象属性是否可修改,flase为不可修改,默认值为true

    let person = {};
    Object.defineProperty(person, 'name', {
        value: 'xixi',
        configurable: false,
        writable: false,
        enumerable: false,
    });
    
    //value
    console.log(person.name); //xixi
    
    //writable
    person.name='biubiu';
    console.log(person.name); //xixi writable: false,不可修改value值
    
    //configurable
    Object.defineProperty(person, 'name', {
        value: 'xixi',
        configurable: true,
        writable: true,
        enumerable: false,
    }); //configurable: false, 不可修改属性 报错 Uncaught TypeError
    delete person.name; //不可修改
    
    //enumerable 
    for(var i in person){ 
        console.log(person[i]); 
    } //enumerable: false,不可枚举 无结果  
    
    Object.defineProperty(person, 'name2', { 
        value: 'hh', 
        configurable: true, 
        writable: true,
        enumerable: true, 
    });
    console.log(person.name2); //hh  
    person.name2='jj'; 
    console.log(person.name2); //writable: true 可修改 jj  
    
    Object.defineProperty(person, 'name2', { 
        value: 'jj', 
        configurable: true, 
        writable: false, 
        enumerable: true, 
    }); //configurable: true,配置可修改 
    
    person.name2='jj2'; 
    console.log(person.name2); //jj writable改为false不可修改 
    
    for(var i in person){ 
        console.log(person[i]); 
    } //jj
  • 相关阅读:
    lseek 与 ioctl
    perror表
    阻塞&&非阻塞
    linux read/write
    文件i/o函数 open/close
    linux 文件io
    linux下的静态库和共享库
    linux基本命令
    c++ 2.1 编译器何时创建默认构造函数
    Java学习笔记34(sql基础 :增删改查1)
  • 原文地址:https://www.cnblogs.com/biubiuxixiya/p/8135748.html
Copyright © 2011-2022 走看看