对象基础创建对象(一)

22 篇文章 0 订阅
15 篇文章 0 订阅

6.1 创建对象>

可以通过对象直接量、关键字new和(ECMScript5 中的) Object.create
函数来创建对象。接下来几节将对这些技术一一讲述。

6.1.1对象直接量

创建对象最简单的方式就是在JavaScript
代码中使用对象直接量。对象直接量是由若干名/值对组成的映射表,名/值对中间用冒号分隔,名/值对之间
用逗号分隔,整个映射表用花括号括起来。属性名可以使JavaScript标识符也可以是字符串直接量(包括空字符串)。属性的值可以使任意类型的JavaScript
表达式,表达式的值(可以使原始值也可以是对象值)。下面是一些例子:

<script type="text/javascript">
            var empty = {};
            var point = {x:0,y:0};
            var point2 = {x:point.x,y:point.y};
            var book = {
                'main title':'javascript',
                'sub-title':'the definitive guide',
                'for':'all audiences',
                'authour':{
                    firstname:'David',
                    surname:'Flanagan'
                }
            };

        </script>

在ECMScript5(以及ECMScript3的一些实现)中,保留字可以用做不带引号的属性名。然而对于ECMScript3来说,使用保留字作为属性名必须使用
引号括起来,在ECMScript5中,对象直接量中的最后一个属性后的逗号将忽略,且在ECMScript3的大部分实现中也可以忽略这个逗号,但在IE中则报错
对象直接量是一个表达式,这个表达式的每次运算都创建并初始化一个新对象。每次计算对象直接量的时候,也都会计算它的每个属性的值。也就是说,
如果在一个重复调用的函数中的循环体内使用了对象直接量,它将创建很多新对象,并且每次创建的对象属性值也有可能不同。

6.1.2 通过new 创建对象

new
运算符创建并初始化一个新对象。关键字new后跟随一个函数调用。这里的函数称作构造函数(constructor),构造函数用以初始化一个新创建的对象。
JavaScript 语言核心中的原始类型都包含内置构造函数。例如:

<script type="text/javascript">
            var o = new Object();//创建一个空对象和{}一样
            var a = new Array();
            var d = new Date();
            var r = new RegExp('/js/ig');
        </script>

除了这些内置构造函数,用自定义构造函数来初始化新对象也是非常常见的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值