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:省略

      

  • 相关阅读:
    关于项目管理的几点建议
    网站性能优化之服务端(一)
    HP CQ35 Windows7声卡驱动安装不上问题
    ubuntu双系统启动时卡死解决办法
    第十九周练习题
    第十六周作业练习题
    第十七周练习题
    第十八周练习题
    第十五周练习题
    第十四周练习题
  • 原文地址:https://www.cnblogs.com/lihaozhou/p/3576485.html
Copyright © 2011-2022 走看看