码迷,mamicode.com
首页 > 其他好文 > 详细

创建对象

时间:2018-02-08 20:14:00      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:可选参数   span   初始化   name   define   时间   模式匹配   第一个   不能   

对象

JavaScript的简单数据类型包括数字、字符串、布尔值、null值和undefined值,其他所有的值都是对象,在JavaScript中,对象是可变的键控集合,数组是对象,函数是对象,正则表达式是对象,当然,对象自然也是对象。

对象是属性的容器,其中每个属性都有名字和值,属性的名字可以是包括空字符串在内的任意字符串,属性值可以是除undefined值之外的任何值。

创建对象

1,对象字面量

对象字面量提供了一种非常方便的创建新对象值的表示法。一个对象字面量就是包围在一对花括号中的零或多“名/值”对,属性名可以是包括空字符串在内的任何字符串。如果属性名是一个合法的JavaScript标识符(由字母、下划线或美元符开头,后面添加字母、数字或下划线的标识符)且不是保留字,则并不强制要求使用引号括住属性名。逗号用来分隔多个“名/值”对。(在ECMAScript5中,保留字可以用作不带引号的属性名,然而对于ECMAScript3来说,使用保留字作为属性名必须使用引号引起来,在ECMAScript5中,对象字面量的最后一个属性后的逗号将忽略,在ECMAScript3中的大部分实现中也可以忽略这个逗号,但是在IE中则报错)。

var empty = {}; //没有任何属性的对象
var p = {
  first_name:‘li‘,       //(_)下划线是合法的
  ‘last-name‘:‘mei‘,      //(-)连接符是不合法的,必须用字符串表示
  ‘father name‘:‘lili‘,   //属性名中有空格,必须用字符串表示
  ‘for‘:‘all‘ ,         //"for"为保留字,必须用引号
  age:23,
  height:180,
  like:{
    food:‘水果‘,
    sports:‘跑步‘
  }
};

2,Object.create()

ECMAScript5定义了一个名为Object.create()的方法,它创建一个新对象,第一个参数就是这个对象的原型,第二个可选参数用以对对象的属性进行进一步描述。Object.create()是一个静态函数,而不是提供给某个对象调用的方法,使用很简单,只需传入所需的原型对象即可。

var a = Object.create({x:1,y:2});            //a继承了属性x和y
var b = Object.create(null); //b不能继承任何属性和方法 var c = Object.create(Object.prototype); //c和new Object()一样

3,通过new创建对象

new运算符创建并初始化一个新对象。关键字new后跟随一个函数调用,这里的函数称为构造函数,构造函数用以初始化一个新创建的对象。

var a = new Object();     //创建一个空对象,和{}一样
var b = new Array();      //创建一个空数组,和[]一样
var c = new Date();       //创建一个表示当前时间的Date对象
var d = new RegExp("js");   //创建一个可以进行模式匹配的正则对象

创建对象

标签:可选参数   span   初始化   name   define   时间   模式匹配   第一个   不能   

原文地址:https://www.cnblogs.com/yuyujuan/p/8432634.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!