(9)JavaScript学习笔记 - 对象

JS中的对象是一种复合数据类型,将多个数据值集中在一个单元中,允许使用名字来存取这些值。
也可以理解为:对象是一个无序的属性集合,每个属性都有自己的名字和值。

一、创建

//直接加入一个对象直接量,是用逗号分隔开的一对对的属性名和值的列表
var empty = {};
var point = {x:0,y:0};
var circle = { x:point.x,y:point.y+1,radius:2};
var homer={
	"name":"Home Simpson",
	"age":34,
	"married":true,
	"occupation":"plant operator",
	'email':"homer@example.com"
}

二、对象属性
//使用 . 来存取对象的属性
var book = {};
book.title = "简·爱";
book.chapter1 = new Object{};
book.chapter1.title = "Introduction to JavaScript";
book.chapter1.pages = 11;
book.chapter2 = { title:"Lexical Structure",pages:6};

alert(
"Outline:"+book.title+"\n\t"+
"Chapter1"+book.chapter1.title+"\n\t"+
"Chapter2"+book.chapter2.title
);

三、属性的枚举
function DisplayProertyNames(obj){
	var name="";
	for(var name in obj){
	names=name+"\n";
	}
	alert(names);
}

四、检查属性的存在性
//in用来测试一个属性的存在性
if("x" in o) o.x=1;
if(o.x!==undefined) o.x=1;
//也可以这样简写
if(o.doSomething) o.doSomething;

五、删除属性
delete book.chapter2;

六、constructor 属性
JS中每个对象都有一个constructor属性,引用了初始化这个对象的构造函数
//可以使用以下的代码确定一个未知值的类型
if((typeof o=="object")&&(o.constructor==Date))

//instanceof可以检查constructor属性的值,所以上面的代码也可以这样写
if((typeof o=="object"&&(o instanceof Date)))

posted @   java程序员-c  阅读(150)  评论(0)    收藏  举报
编辑推荐:
· 微服务架构学习与思考:微服务拆分的原则
· 记一次 .NET某云HIS系统 CPU爆高分析
· 如果单表数据量大,只能考虑分库分表吗?
· 一文彻底搞懂 MCP:AI 大模型的标准化工具箱
· 电商平台中订单未支付过期如何实现自动关单?
阅读排行:
· 精选 4 款免费且实用的数据库管理工具,程序员必备!
· Cursor:一个让程序员“失业”的AI代码搭子
· .NET 阻止Windows关机以及阻止失败的一些原因
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(6)
· 博客园2025新款「AI繁忙」系列T恤上架
点击右上角即可分享
微信分享提示