zoukankan      html  css  js  c++  java
  • (12)javascript 面向对象 理解对象

    1 声明

      var person = new Object();

      person.name = "Jackey";//属性

      person.age = 20;//属性

      person.sayName = function(){};//方法

      2 var person = {

        name:"Jackey",

        age:20,

        sayName:function(){}

      };

    2 属性类型

      1 [Configurable] 表示能否通过delete删除属性/能否修改属性的特性

        /能否把属性修改为访问器属性。默认为true

      2 [Enumerable]表示能否通过for-in循环返回属性,默认为true

      3 [Writable] 表示能否修改属性的值,默认为true

      4 [Value]包含这个属性的数据值,读取属性值的时候,从这个位置读。写入属性值的时候

        把新值保存到这个位置。默认值为undefined

      var person = {

        name:"Jackey"

      };

      将[Value]设置为Jackey,如果要修改属性的默认特性,必须使用ECMAScript5的object.definedProperty()

      这个方法必须接受3个参数:属性所在对象(person),属性的名字,描述符对象。

      var person={};

      Object.definedproperty(person,"name",{

        writable:false,

        value:"Cassi"

        });

      person.name="Jackey";//不能修改

      alert(person.name);//Cassi

      configurable 设置为false:不能删除对象中的属性

      var person = {};

      Object.definedProperty(person,"name",{

        configurable:false,

        value:"Jackey"

      });

      alert(person.name);//Jackey

      delete person.name;

      alert(person.name);//Jackey不能删除,可正常显示

      一旦修改了属性的configurable writable属性,就不能再修改了,否则会报错

      ie8是第一个实现Object.definedProperty方法的浏览器

      访问器属性:getter setter:省略

      

  • 相关阅读:
    Windows 2008server部署pxe启动安装windows系统
    wordpress迁移报错
    解决PHP无法监听9000端口问题/502错误解决办法
    Failed to start LSB: starts php-fpm
    nginx.service: control process exited, code=exited status=1
    linux通过ntp同步时间
    ESXI6.7主机降级至ESXI6.5
    在vCenter Server中添加ESXi 主机失败的问题
    windows ping bat脚本
    不错的网站压力测试工具webbench
  • 原文地址:https://www.cnblogs.com/lihaozhou/p/3576485.html
Copyright © 2011-2022 走看看