文档章节

6_引用类型(【三】object)

1217528969
 1217528969
发布于 2015/03/02 14:24
字数 452
阅读 17
收藏 0

    我们目前为止大多数引用类型都是Object类型的实例,Object也是ECMAScript中使用最多的一种类型(就像java.lang.Object一样,Object类型是所有它的实例的基础)。
Object类型的创建方式、使用

//object实例的定义方式
var obj = new Object();
var obj = {}; //实例化对象
obj.name = "z3";
obj.age = 20;
obj.sex = "男";
obj["birthday"] = "1980-08-07";
obj.say = function(){
    console.info("Hello World!");
};

//访问对象的属性和方法
console.info(obj.name);
console.info(obj.age);
console.info(obj.say);
alert(obj.say);
obj.say(); 

//delete操作符 删除对象的属性和方法
delete obj.age;
delete obj.say;

console.info(obj.name);
console.info(obj.age);
console.info(obj.say);
alert(obj.say);
obj.say();  //此处会报错, TypeError: obj.say is not a function

对于Object类型应用for in 枚举循环

//遍历一个js对象,使用for in语句
for(var attr in obj){
    console.info(attr + " --> " + obj[attr]);
}

Object每个实例都会具有下列属性和方法:
Constructor: 保存着用于创建当前对象的函数

//Constructor保存对象的创建函数
alert(obj.constructor);
var arr = [];
alert(arr.constructor);

hasOwnProperty(propertyName):用于检测给定的属性在当前对象实例中(而不是原型中)是否存在。

//hasOwnProperty(propertyName) 检测给定的属性在对象中是否存在
console.info(obj.hasOwnProperty("name")); //true
console.info(obj.hasOwnProperty("aaa")); //false

isPrototypeOf(Object): 用于检查传入的对象是否是另外一个对象的原型。

//isPrototypeOf(Object)  检测原型
console.info(Object.prototype.isPrototypeOf(obj));

propertyIsEnumerable(propertyName):用于检查给定的属性是否能够使用for-in语句来枚举。

//propertyIsEnumerable(propertyName)检测给定的属性是否能被for in枚举出来
console.info(obj.propertyIsEnumerable("name"));

toLocaleString():返回对象的字符串表示。该字符串与执行环境的地区对应.
toString():返回对象的字符串表示。
valueOf():返回对象的字符串、数值或布尔表示

console.info(obj.valueOf());
console.info(obj.toLocaleString());
console.info(obj.toString());

© 著作权归作者所有

共有 人打赏支持
1217528969
粉丝 1
博文 27
码字总数 14810
作品 0
济南
前端 - JS - 笔记摘要

一、JS对象 var obj = {};// 初始化一个JS对象 obj.test = function(options){ //添加方法 //TODO something } obj.a = 5;//添加属性 js本来就是动态的,它可以给任何对象在任何时候添加属性...

Elivense
2016/11/16
8
0
C#中==、Equals、ReferenceEquals的区别是什么

一、== 运算符 1、静态相等符号,对应存在的!=,这个符号是一个可以重载的二元操作符,可以用于比较两个对象是否相等。 2、它会根据需要自动进行必要的类型转换,并根据两个对象的值是否相等返...

学习也休闲
2016/04/05
52
0
值类型和引用类型

值类型(变量直接包含数据) 简单类型 枚举 结构 引用类型(变量包含对存储对象的引用) 类 接口 委托 数组 这两者类型有什么区别呢?很简单。值类型是直接包含了变量的具体值,引用类型包含...

彭博
2012/03/09
20
0
java对象占内存大小分配的初步认识

问题1? java的对象引用占用多少个字节? 问题2? null值占几个字节,boolen值占几个字节? 问题3?对象占用字节大小如何计算? 如下结论都是基于32位系统下,参考资料: http://wenku.baidu...

thinkerfans
2013/01/03
0
0
java引用-强软弱虚-避免OOM

Java 如何有效地避免OOM:善于利用软引用和弱引用   想必很多朋友对OOM(OutOfMemory)这个错误不会陌生,而当遇到这种错误如何有效地解决这个问题呢?今天我们就来说一下如何利用软引用和...

liujiest
2016/08/17
96
0

没有更多内容

加载失败,请刷新页面

加载更多

mysql 数据类型及占用字节数

数字类型 TINYINT                           1 字节 SMALLINT                          2 个字节 MEDIUMINT                         3 个字节...

会游泳的鱼_
46分钟前
3
0
高性能mysql:创建高性能的索引

性能优化简介 MySQL性能定义为完成某件任务所需要的时间量度,换句话说,性能即响应时间,这是一个非常重要的原则。我们通过任务和时间而不是资源来测量性能。数据库服务器的目的是执行SQL语...

背后的辛酸
今天
4
0
HTTP get、post 中请求json与map传参格式

import java.io.IOException;import java.net.URI;import java.net.URISyntaxException;import java.nio.charset.Charset;import java.util.ArrayList;import java.util.List;im......

寒风中的独狼
今天
3
0
IDEA中tomcat启动慢 耗时10分钟

用idea中的tomcat以debug模式启动,会非常的慢,而正常启动没啥问题;原因是debug模式中View Breakpoints断点代码,断点的是jar包,而现在启动由于jar包发生变化,导致启动时一直处于等待中。...

GoodMarver
今天
5
0
Linux学习-10月18(awk)

9.6/9.7 awk 一、awk简介   1. awk是一种编程语言,用于对文本和数据进行处理的   2. 具有强大的文本格式化能力   3. 利用命令awk,可以将一些文本整理成为我们想要的样子   4. 命令awk...

wxy丶
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部