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

    JavaScript对象是动态的,可以新增属性,也可以删除属性--但他们常用来模拟静态对象以及静态类型语言中的“结构体”(struct)。有时候他们也用作字符串的集合(忽略名/值对中的值)

    除了字符串、数字、true、false、null和undefined之外,JavaScript中的值都是对象。

    JavaScript对象的属性包括名字和值。属性名可以是包含空字符串在内的任何字符串,但不同存在两个同名的属性。除了名字和值之外,每个属性还有一些与之相关的值,称为“属性特性”---可写,可枚举,可配置。

        可写:表明是否可以设置该属性的值。

        可枚举:表明是否可以通过for/in循环返回该属性。****

        可配置:表明是否可以删除或修改该属性。

        注:在ECMSciript之前,通过代码给对象创建的所有属性都是可写的、可枚举的、可配置的。在ECMScript 5中则可以对这些特性加以配置。6.7讲如何操作。

    JavaScript对象,除了包含属性之外,每个对象还拥有三个相关的对象特性(object attribute):

      对象的原型(prototype)指向另外一个对象,本对象的属性继承自它的原型对象。

      对象的类(class)是一个标识对象类型的字符串。

      对象的扩展标记(extensible flag)指明了(在ECMScript 5中)是否可以向该对象添加属性。

    最后,我们用下面这些术语来对三类JavaScript对象和两类属性作区分:

      内置对象(native object)是由ECMScript规范定义的对象或类。例如,数组、函数、日期和正则表达式都是内置对象

      宿主对象(host object)是由JavaScript解释器所嵌入的宿主环境(比如Web浏览器)定义的。客户端JavaScript中表示网页结构的HTMLElement对象均是宿主对象。既然宿主环境定义的方法可以当成普通的JavaScript函数对象,那么宿主对象也可以当成内置对象。

      自定义对象(use-defined object)是由运行中的JavaScript代码创建的对象。

      自有属性(own property)是直接在对象中定义的属性。

      继承属性(inherited property)是在对象的原型对象中定义的属性。

                                 创建对象

    对象直接量(最简单的方式)、关键字new、(ECMScript 5中的)Object.create()函数

  • 相关阅读:
    kali渗透综合靶机(八)--Billu_b0x靶机
    kali渗透综合靶机(七)--Super-Mario-Host靶机
    kali渗透综合靶机(九)--Typhoon靶机
    【Flask】 python学习第一章
    【HICP Gaussdb】数据库 数据库管理(连接方式 会话模式 存储表空间)-6
    【HICP Gaussdb】数据库 数据库管理(shutdown 日志 连接命令)-5
    【HCIA Gaussdb】学习汇总-数据库管理(数据库基本概念)-3
    【Flask】 python学习第一章
    【HCIA Gaussdb】学习汇总-数据库管理-2
    【HICP Gaussdb】数据库 数据库管理(调优 启动流程)-4
  • 原文地址:https://www.cnblogs.com/mrxiaohe/p/5227526.html
Copyright © 2011-2022 走看看