`
yuyongkun4519
  • 浏览: 44838 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JavaScript 对象属性

 
阅读更多

JavaScript中的对象属性有两种:

 

一,数据属性

 

数据属性有四个描述其行为的特性:

1:Configurable

定义了能否删除属性,能否修改属性的特性,能否把属性修改为访问器属性,该属性默认值是true。

2,Enumerable

定义了能否通过for...in遍历对象属性,该属性默认值时true。

3,Writable

定义了能否修改对象的属性

4,Value

定义了属性的数据值,默认为undefined

 

创建一个对象:

var school={

name:"北大"

};

我们要修改属性默认的特性,必须使用ECMAScript5的Object.defineproperty方法。

 

操作1:修改configurable为false

Object.defineProperty(school,"name",{

configurable:false

});

执行delete school.name,打开浏览器控制台可以看到,在非严格模式下没有任何反应,在严格模式下会有错误提示。

错误提示:Uncaught TypeError: Cannot delete property 'name' of #<Object>

 

既然configurable已经被设置为false,就不能在调用defineProperty方法修改回true,否则不管是否严格模式都会报错。

Object.defineProperty(school,"name",{

configurable:true

});

错误提示:Uncaught TypeError: Cannot redefine property: name

 

但是writable特性例外,除了修改Writable的特性不会报错,修改其它的特性都会报错。

 

 

 

二,访问器属性

 

访问器属性也有四个描述其行为的特性:

1:Configurable

定义了能否删除属性,能否修改属性的特性,能否把属性修改为数据属性,该属性默认值是true。

2,Enumerable

定义了能否通过for...in遍历对象属性,该属性默认值时true。

3,Set

修改属性值的时候调用该函数

4,Get

读取属性值的时候调用该函数

 

    var book = {
        _year: 2017,
        editor: 1

    };
    Object.defineProperty(book, "year", {
        get: function() {
            return this._year;

        },
        set: function(newVal) {
            if (newVal != this._year) {
                this._year = newVal;
                this.editor++;
            }

        }
    });

 定义的访问器属性,只能通过对象方法访问。

分享到:
评论

相关推荐

    JAVASCRIPT对象属性大全[参考].pdf

    以上内容仅是JavaScript对象属性的一个概述,实际的JavaScript对象和属性体系更为庞大和复杂,包括了更多如`form`、`window`、`event`、`math`等对象,以及更多的方法和属性,用于实现丰富的交互和功能。理解并熟练...

    js对象属性大全下载

    ### JavaScript对象属性详解 在深入探讨JavaScript对象属性之前,我们首先需要理解JavaScript是一种广泛应用于网页开发的编程语言,它能够使网页变得动态、交互性更强。JavaScript中的对象是其核心特性之一,几乎...

    proactjs, 反应性JavaScript对象属性.zip

    proactjs, 反应性JavaScript对象属性 proact.js 下载开发工具生产产品关于 ProAct.js针对对象属性,即面向对象的反应性范例在编程语言中的应用。 在人类语言中,反应性思想如下: 如果定义sum=a b并更改'a'或者'b',...

    javascript 对象属性property与元素属性attribute的浏览器支持

    在探讨JavaScript对象属性(Property)与元素属性(Attribute)及其浏览器支持情况之前,我们需要先理解这两个概念的基本含义以及它们之间的区别。接下来,我们将深入分析这两种属性的特点、应用场景以及不同浏览器...

    JavaScript对象属性操作实例解析

    这篇文章主要介绍了JavaScript对象属性操作实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在js对象中,我们可以对对象属性进行操作。 上图的要点为...

    js对象属性排序

    本篇文章将深入探讨JavaScript对象属性排序的原理、方法以及注意事项。 首先,了解JavaScript对象的基本特性是至关重要的。在ECMAScript规范中,对象的属性访问速度并不依赖于属性的位置或顺序,因为它们内部是通过...

    JavaScript对象属性检查、增加、删除、访问操作实例

    在学习和使用JavaScript对象属性的各种操作时,开发者需要根据实际情况选择合适的方法。这不仅能够帮助实现更丰富的功能,也是提升代码质量和维护性的关键。总之,理解并掌握对象属性的操作对于进行高效的JavaScript...

    patrun:JavaScript对象属性的快速模式匹配器

    JavaScript对象属性的快速模式匹配器。 是否需要根据其属性的子集挑选一个对象? 说您有: { x : 1 , } - &gt; A { x : 1 , y : 1 } - &gt; B { x : 1 , y : 2 } - &gt; C 然后patrun可以为您提供以下结果: { x : 1 } - ...

    javascript对象参考手册

    这份手册分为20个章节,旨在提供全面的JavaScript对象属性和方法的解释,帮助开发者深入理解和运用这个强大的动态脚本语言。 首先,我们要理解JavaScript的核心概念。JavaScript是一种基于原型的、动态类型的、弱...

    javascript对象大全

    "JAVASCRIPT对象属性大全.doc"和"js对象属性方法大总结.doc"可能涵盖了JavaScript对象的属性和方法,包括但不限于原型链(prototype)、原型对象(__proto__)、构造函数(constructor)、以及如何添加和访问对象的...

    获得Javascript对象属性个数的示例代码

    首先,要理解JavaScript中对象属性的分类。对象的属性可以分为两类:自有属性和继承属性。自有属性是指直接定义在对象实例上的属性,而继承属性是指从原型链上继承下来的属性。本文中的目标是计算自有属性的个数,不...

    JavaScript面向对象的程序设计(犯迷糊的小羊)

    JavaScript对象属性分为数据属性和访问器属性。数据属性有四个特性:[[Value]](值)、[[Writable]](可写性)、[[Enumerable]](可枚举性)、[[Configurable]](可配置性)。访问器属性有两个特性:[[Get]](获取...

    javascript对象转换成json

    在JavaScript中,我们可以使用内置的`JSON.stringify()`方法将JavaScript对象转换为JSON字符串。 ### JSON.stringify()方法 `JSON.stringify()`是JavaScript中的全局函数,用于将JavaScript值转换为JSON字符串。它...

    JavaScript即用特效(PDG)

    本书将JavaScript特效分为11类,介绍了100...为了方便你修改及学习JavaScript,本书附录内有JavaScript编写要点及JavaScript对象属性、方法一览。创作由临摹开始,学完本书的例子,相信你也能创作出自已的JavaScript。

    javaScript对象.属性

    javaScript对象.属性

    JavaScript[对象.属性]集锦

    JavaScript[对象.属性]集锦,大家了解下。

    JSP ASP HTML JavaScript 对象及属性大全

    SP对象 ASP属性 HTML对象及属性 JavaScript 对象及属性大全

Global site tag (gtag.js) - Google Analytics