引用类型之Object
引用类型
引用类的值(对象)是引用类型的一个实例。在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起。
对象是某个特定引用类型的实例。新对象是使用new操作符后跟一个构造函数来创建的。构造函数本身就是一个函数,只不过该函数是出于创建新对象的目的而定义的。
var person=new Object();
这行代码创建了Object引用类型的一个新实例,然后把该实例保存在了变量person中。使用的构造函数是Object,它只为新对象定义了默认的属性和方法。ECMAScript提供了很多原生引用类型。
Object类型
创建Object实例的方式:
第一种,使用new操作符后跟Object构造函数,如下
var person=new Object();
person.name="breeze";
person.age="20";
另一种方式是使用对象字面量表示法。对象字面量是对象定义的一种简写形式
var person={
name:"breeze",
age:20
}
对象字面量是对象定义的一种简写形式,目的在于简化创建包含大量属性的对象的过程。
在使用对象字面量语法时,属性名也可以使用字符串,如下
var person={
"name":"breeze",
"age":20
}
这个例子创建了一个对象,包含两个属性:name和age,但这里的数值属性名会自动转换成字符串,另外,使用对象字面量语法的时候,也可以留花括号然后自定义属性和方法,例如
var person={};
person.name="breeze";
person.age=20;
注意点:对象字面量语法,更推荐在只考虑对象属性名的可读性时使用
实例
虽然可以使用前面任何一种方法来定义对象,但是对象字面量也是向函数传递大量参数的首选方式,例如
function dispalyInfo(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)
}
dispalyInfo({
name:"breeze",
age:20
})
//name:breeze
//age:20
在这个例子中,函数displayInfo( )接收一个名为args的参数,这个参数可能带有名为name和age的属性,也可能啥也没有,在这个函数内部,我们通过typeof操作符来检测每个属性是否存在,然后基于相应的属性来构建出要显示的信息。我们调用这个函数时,所使用的时对象字面量语法来指定不同的数据。
注:这种传参模式最适合需要向函数传入大量可选参数的情形。
对象属性
一般来说,访问对象属性都是用的点表示法,不过也可以使用方括号来访问对象的属性。在使用方括号语法时,应该将要访问的属性以字符串的形式放在方括号中,例子如下
alert(person.name)
alert(person["name"])
从功能上,两种方法没有区别,但方括号语法的主要优点是可以通过变量来访问属性,例如
var person={
"name":"breeze",
"age":20
}
var propertyName="name";
alert(person[propertyName]); //"breeze"
引用类型之Object的更多相关文章
- JavaScript笔记——引用类型之Object类型和Function类型
<JavaScript高级程序设计>中介绍的几种JavaScript的引用类型,本文只记了Object跟Function类型 Object类型 创建对象 var person = new ...
- 浅析JavaScript引用类型之--Object、Array
1.Object类型 对象是某个特定引用类型的实例,新对象有两种创建方式: i.使用new操作符调用构造函数来创建. var person = new Object(); person.name = ...
- Javascript基础引用类型之Object
虽然说ECMAScript也是一门对象语言,但是它和其他面向对象语言还是有区别的,它不具有类和接口等基本结构.所以在ECMAScript中一般说类指的是引用类型.创建Object实例的方式有两种: 第 ...
- JavaScript引用类型之Object类型
在JavaScript中大多数的引用类型都是Object的实例,Object类型也是使用最多的类型! 创建Object类型实例的方式有两种,下面分别来分析一下: (1)第一种是使用new操作符后跟Ob ...
- 学习 JavaScript (八) 引用类型之 Object
在JavaScript中,引用类型是一种数据结构.包括对象(Obejct).数组(Array).日期(Date).正则表达式(RegExp).函数(Function).基本包装类型(new Boole ...
- JS 引用类型之Object
引用类型定义: 描述一类对象具有的属性和方法 引用类型Object ,也就是我们常说的对象类型了,这应该是JavaScript中最常见的引用类型了. 对象是某个引用类型的实例,如何创建一个实例,也就是 ...
- JavaScript的进阶之路(三)引用类型之Object类型和Array类型
引用类型 Object类型 function a(num){ if(num>3){ a(--num); } console.log(num); } a(5); //如何创建对象的实例 var o ...
- JavaScript之引用类型(Object类型)
ECMAScript提供了很多原生的引用类型,以便开发人员进行常见的计算任务. 对象是某一个特定引用类型的的实例. Object类型 用的最多.虽然这个Object实例不具备多少功能,但是在应用程序的 ...
- 引用类型之object和date详解
引用类型的值是引用类型的实例,js中的引用类型是一种数据类型,用于将数据和功能组织在一起(也可叫对象定义,因为描述一类对象具有的属性和方法) 1.Object类型 大多数引用类型都是object类型, ...
随机推荐
- Kafka入门(3):Sarama生产者是如何工作的
摘要 在这一篇的文章中,我将从Sarama的同步生产者和异步生产者怎么创建开始讲起,然后我将向你介绍生产者中的各个参数是什么,怎么使用. 然后我将从创建生产者的代码开始,按照代码的调用流程慢慢深入,直 ...
- [PyTorch 学习笔记] 4.3 优化器
本章代码: https://github.com/zhangxiann/PyTorch_Practice/blob/master/lesson4/optimizer_methods.py https: ...
- tars 问题汇总
1. 节点 ip地址变了如何解决.后台不可以改. 2. [ok] 服务如何在本地运行../HelloGo --config.conf
- HDU—2021-发工资咯(水题,有点贪心的思想)
作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵 但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡老师最近就在考虑一个问题:如果每 ...
- SpringBoot系列之从入门到精通系列教程
对应SpringBoot系列博客专栏,例子代码,本博客不定时更新 Spring框架:作为JavaEE框架领域的一款重要的开源框架,在企业应用开发中有着很重要的作用,同时Spring框架及其子框架很多, ...
- 安装cnpm设置npm淘宝镜像源
安装cnpm npm install -g cnpm 验证npm镜像源 npm config get registry 题外话:cnpm和npm区别? cnpm其实就是在npm的基础上将镜像源更换到国 ...
- 记录一个基于Java的利用快排切分来实现快排TopK问题的代码模板
使用快排切分实现快排和TopK问题的解题模板 import java.util.Arrays; public class TestDemo { public static void main(Stri ...
- IDEA 2020 集成 Activity插件
我按照教程打开settings-plugins,搜索actiBPM搜索不到, 于是我就去下载插件,然后再安装,具体步骤如下: 下载插件: 到http://plugins.jetbrains.com/, ...
- leetcode刷题-47全排列2
题目 给定一个可包含重复数字的序列,返回所有不重复的全排列. 思路 其思路与46题完全一致,但是需要与组合总和2题一般,在同一层取出重复元素.因此可以在每一层设置一个set()类型,将访问过的元素放入 ...
- 【NOIP2013模拟】黑魔法师之门
题目描述 经过了16个工作日的紧张忙碌,未来的人类终于收集到了足够的能源.然而在与Violet星球的战争中,由于Z副官的愚蠢,地球的领袖applepi被邪恶的黑魔法师Vani囚禁在了Violet星球. ...