JavaScript引用类型之Object类型

在JavaScript中大多数的引用类型都是Object的实例,Object类型也是使用最多的类型!

创建Object类型实例的方式有两种,下面分别来分析一下:

(1)第一种是使用new操作符后跟Object构造函数,代码如下:

var perosn=new Object();
person.name="张三";
person.age=22;

(2)第二种方式使用对象字面量表示法。对象字面量是对象定义的一种简写方式,目地就是为了简化创建含有大量属性和方法的对象的过程。代码如下:

var person={
name:"张三",
age:22
};

这里注意,属性名可以是字符串,数值,布尔,因为当创建对象时,这里的属性名会自动转换为字符串!

(3)第三种方式是使用对象字面量表示法,但留空其花括号,代码如下:

var person={};
person.name="张三";
person.age=22;

结合上面三种创建方式,第二种最好,因为这种语法要求的代码量少,而且能够给人封装数据的感觉。最终要的是,对象字面量也是向函数传递大量可选参数的首选方式,代码如下:

<script>
    function displayInfo(args) {
        var output="";
        if(typeof args.name=="string"){
         output+="name:"+args.name+"\n";
        }
        if(typeof args.age=="number"){
            output+="age:"+args.age+"\n";
        }
        alert(output);
    }
    displayInfo({
        name:"张三",
        age:22
    });
    displayInfo({
        name:"拉拉"
    });
</script>

这里displayInfo()接受一个名为args的参数。而这个参数就是通过对象字面量表示法创建的Object对象,这个对象包含了所有displayInfo()需要的参数!

所以这种传递参数的模式最适合需要向函数传递大量可选参数的情形,这种方式即灵活,又节省代码!

下面是一个关于访问对象中属性重要的知识点:

一般来说,访问对象属性时使用的都是点表示法,这也是很多面向对象那个语言中通用的语法。不过,在JavaScript中也可以使用方括号法来访问对象的属性!

通过方括号访问对象属性的方式完美的解决了点表示法不能通过一个变量访问属性的缺点:代码如下:

var param="name";
var value=person[param];
alert(value);

还有就是,当属性名中出现空格像"first name",这个时候是无法用点表示法来访问的,只能通过方括号来访问!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏章鱼的慢慢技术路

多维数组的传递

1624
来自专栏cs

c++13.0 STL[stack,queue,set,dequeue]

set相关知识点: ---- set:集合,红黑树实现 特点: 1.0 内部的元素根据其值自动排序。 2.0 内部元素只能出现一次。 set数据结...

2416
来自专栏前端知识分享

第203天:js---Array对象常用方法

942
来自专栏河湾欢儿的专栏

第五节正则

912
来自专栏蓝天

Linux内核list/hlist解读

Linux内核实现了一批优雅而功能强大的双向循环列表操作宏,它们位于/usr/include/linux/list.h(请注意直接#include会报编译错误...

1221
来自专栏一“技”之长

分分钟使用正则表达式 原

        从概念上来说,正则表达式也是一门小巧而精炼的语言,它可以用来简化检索特定的字符串,替换特定字符等功能,有许多开发语言工具,都内嵌支持正则表达式。...

773
来自专栏生信小驿站

python-运算符与表达式

你所编写的大多数语句(逻辑行)都包含了表达式(Expressions)。一个表达式的简单例子便是 2+3。表达式可以拆分成运算符(Operators)与操作数(...

1822
来自专栏desperate633

LintCode 移动零题目分析

给一个数组 nums 写一个函数将0 移动到数组的最后面,非零元素保持原数组的顺序

812
来自专栏lzj_learn_note

1-python基础

​ 同一个变量a可以反复赋值,且可以是不同类型的变量. 这种变量本身类型不固定的语言称为动态语言, 比如python, javascript....

2612
来自专栏ml

nyoj-----前缀式计算

前缀式计算 时间限制:1000 ms  |           内存限制:65535 KB 难度:3 描述 先说明一下什么是中缀式: 如2+(3+4)*5这种我...

3446

扫码关注云+社区

领取腾讯云代金券