资讯专栏INFORMATION COLUMN

Javascript引用类型——“Object类型”的注意要点

Codeing_ls / 388人阅读

摘要:类型关于引用类型的概念引用类型引用类型的值对象是引用类型的一个实例对象是某个特定引用类型的实例新对象用操作符后跟一个构造函数来创建的如代码这行代码创建了引用类型的一个新实例,然后把该实例保存在了变量中。使用的构造函数是。

Object 类型 关于引用类型的概念:

引用类型:引用类型的值(对象)是引用类型的一个实例;

对象:是某个特定引用类型的实例;

新对象:用new 操作符后跟一个构造函数来创建的;如代码:var person = new Object();这行代码创建了Object 引用类型的一个新实例,然后把该实例保存在了变量person 中。使用的构造函数Object()

创建Object 类型实例的方法

使用new 操作符后跟Object 构造函数;

使用对象自变量表示法

对于第一种,Object 实例的创建方式如下:

var child = new Object();
child.name = "Oliver";
child.age = 18;
console.log(child.name); //"Oliver"

对于第二种,Object 实例的创建方式如下:

var child = {
    name: "Oliver",
    age: 18
}
console.log(child.age + " " + child.name); //"18 Oliver"

上面这个例子中,在age:18 之后不能添加逗号,因为age 是这个对象的最后一个属性。(在最后一个属性后面添加逗号,会在IE7 及更早版本和Opera 中导致错误。)

另外,在自变量表示法创建实例的中,属性名也可以使用字符串,如:

var person = {
    "name" : "Nicholas",
    "age" : 29,
    5 : "fdd"
}
console.log(person.name); //"Nicholas"
console.log(person["5"]); //"fdd"

注意!这里如果要访问person 里面的属性名为5 的属性的值,则需要使用方括号语法如:person[5],最好写成person["5"]后面会介绍。

另外,这里的5 会被自动转换成字符串"5"。

在使用字面两语法时,如果留空其花括号,则可以定义只包含默认属性和方法的对象,如:

var person = {};
person.name = "Oliver";
person.age = 18;
person[5] = "fdd";

这里的var person = {}new Object()相同。

对象字面两也是向函数传递大量可选参数的首选方式,如:

function display(obj){
    var output = "";
    if (typeof obj["name"] == "string"){
        output += "Name: " + obj["name"] + "
"; } if (typeof obj.age == "number"){ output += "Age: " + obj.age + "
"; } document.write(output); } display({ name:"Oliver", age:18 })

一般来说方括号语法是在必须使用变量来访问属性的时候才使用。如果这里一定要用方括号语法,那就必须写成这样的形式person["name"]person.name相同。后面会详述。

访问对象的属性

一般来说主要有两种方法:

点表示法;

方括号语法;

访问对象属性时一般都是使用点表示法。当然也可以使用方括号表示法,如:

person.name;
person["name"];

方括号语法的主要优点是可以通过变量来访问属性,如:

var person = {
    name:"Oliver"
}
var propertyName = "name";
console.log(person[propertyName])

在对象里面,name属性可以写成字符串形式"name",如果用方括号语法,一定要注意写成person["name"]

如果属性名中包含会导致语法错误的字符,或者属性名使用的是关键字或保留字,也可以使用方括号表示法。如:

person["first name"] = "Oliver";

因为如果写成person.first name 会报错。
一定要注意的是,除非必须使用变量来访问属性,否则建议使用点表示法。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/86180.html

相关文章

  • JavaScript数据类型一些注意要点

    摘要:如类型除了可以以十进制表示之外,整数还可以通过八进制或者十六进制的字面值来表示,其中八进制字面值的第一位必须是,然后是八进制数字序列。 Javascript 数据类型 ECMAscript 中有5种简单的数据类型,也被称为基本数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂的数据类型——Object。 Undefined 类型 在使用va...

    Tonny 评论0 收藏0
  • Javascript变量注意要点

    摘要:如很明显可以看到,实际上是函数的局部变量。简单的说就是,复制给参数,在函数内部是局部变量,无论怎么变化,都不影响的变化。 ECMAScript 变量可能包含两种不同数据类型的值:基本类型值和引用类型值。 基本类型和引用类型的值 基本类型值(String,Number,Boolean,Null,Undefined)指的是简单的数据段;引用类型值(保存在内存中的对象)指的是那些可能由多个值...

    booster 评论0 收藏0
  • JavaScript引用类型——“单体内置对象”注意要点

    摘要:单体内置对象单体内置对象就是开发人员不必显式地实例化内置对象,因为他们已经实例化了。前面的章节讨论过了大多数内置对象,还定义了两个单体内置对象和。 单体内置对象 单体内置对象就是开发人员不必显式地实例化内置对象,因为他们已经实例化了。前面的章节讨论过了大多数内置对象,ECMA-262 还定义了两个单体内置对象:Global 和Math。 Global 对象 所有在全局作用域中定义的属性...

    xushaojieaaa 评论0 收藏0
  • JavaScript 代码优化和部署——“可维护性”注意要点

    摘要:代码约定可读性以下地方需要进行注释函数和方法注释参数代表什么,是否有返回值大段代码描述任务的注释复杂的算法变量和函数命名变量用名词函数名用动词开头等返回布尔值类型的函数用等合乎逻辑不用担心太长变量类型透明化方法一初始化,如下推荐方法二匈牙利 代码约定 可读性 以下地方需要进行注释: 函数和方法:注释参数代表什么,是否有返回值; 大段代码:描述任务的注释; 复杂的算法; Hack 变...

    scwang90 评论0 收藏0
  • JavaScript引用类型——“Date类型注意要点

    摘要:类型中的类型使用自,国际协调时间年月日午夜零时开始经过的毫秒数来保存日期。类型保存的日期能够精确到年月日之前或之后的年。和的输出因浏览器不同而有所差异如年月日上午方法可用比较操作符来比较日期值。 Date 类型 ECMAScript 中的Date 类型使用自UTC(Coordinated Universal Time,国际协调时间)1970 年1 月1 日午夜(零时)开始经过的毫秒数来...

    brianway 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<