JavaScript对象

JavaScript的对象是一种无序的集合数据类型,它由若干键值对组成。对象的所有属性都是字符串,不过属性对应的值可以是任意数据类型。用于描述现实世界中的某个对象。

JavaScript用一个{...}表示一个对象,键值对以xxx: xxx形式申明,用,隔开。注意,最后一个键值对不需要在末尾加,,如果加了,有的浏览器(如低版本的IE)将报错。

访问属性是通过.操作符完成的,但这要求属性名必须是一个有效的变量名。如果属性名包含特殊字符,就必须用''括起来,访问这个属性也无法使用.操作符,必须用'xxx'来访问。

访问不存在的属性不报错,而是返回undefined。

由于JavaScript的对象是动态类型,可以自由地给一个对象添加或删除属性。如果要检测是否拥有某一属性,可以用in操作符,如果in判断一个属性存在,这个属性不一定是对象的,它可能是继承得到的

'toString' in xiaoming; // true

因为toString定义在object对象中,而所有对象最终都会在原型链上指向object,所以xiaoming也拥有toString属性。

要判断一个属性是否是xiaoming自身拥有的,而不是继承得到的,可以用hasOwnProperty()方法:

var xiaoming = {

name: '小明'

};

xiaoming.hasOwnProperty('name'); // true

xiaoming.hasOwnProperty('toString'); // false

相关推荐
Ting.~6 分钟前
在java中接入百度地图
java·开发语言·dubbo
小短腿的代码世界7 分钟前
Qt对象树析构链与智能指针协同:零泄漏内存管理架构
开发语言·qt·架构
黄敬峰11 分钟前
从 XMLHttpRequest 到 JSON 模拟:打通前后端通信的任督二脉
javascript
weixin_4713830311 分钟前
Taro-03-页面生命周期
前端·javascript·taro
zhaqonianzhu15 分钟前
LOL切回桌面问题,采用监控抓出元凶方式
开发语言
Aurorar0rua17 分钟前
CS50 x 2024 Notes Arrays - 04
c语言·开发语言·学习方法
Asize17 分钟前
数组数据结构底层:从灵活到陷阱
前端·javascript·算法
十九画生18 分钟前
Ajax 入门:用 XHR 理解前后端异步请求
前端·javascript·后端
一起吃元宵1 小时前
百度网盘下载不限速的办法_百度网盘不限速
开发语言·百度网盘·下载不限速·不限速·百度网盘不限速
人道领域1 小时前
【LeetCode刷题日记】47.全排列Ⅱ
java·开发语言·算法·leetcode