js中的对象类型的基本操作
示例
/**
* 对象属于一种复合数据类型,在对象中可以保存多个不同数据类型的属性
* 对象的分类:
* 1.内建对象
* - 由ES标准定义的对象,在任何ES的实现中都可以使用,比如:Math,
* String, Number, Boolean, Function, Object 等等。
* 2.宿主对象
* - 由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象,比如:BOM, DOM
* 3.自定义对象
* - 由开发人员自己创建的对象
*
* 创建对象
* - 使用new关键字调用的函数是构造函数constructor,构造函数是专门用来创建对象的函数
* var obj = new Object();
* - 用typeof检查一个对象时,会返回object
* console.log(typeof obj); // object
* 添加属性
* - 在对象中保存的值成为属性
* - 在对象中添加属性,语法:对象.属性名 = 属性值;
* obj.name = 'Lily';
* 读取对象的属性
* - 语法:对象.属性名;
* - 如果读取对象中没有的属性,不会报错而是会返回undefined
* 修改对象的属性值
* - 语法:对象.属性名 = 新值;
* 删除对象的属性
* - 语法:delete 对象.属性名;
*/
// 创建对象obj
var obj = new Object();
// 打印obj的数据类型
console.log(`obj的类型是 ${typeof obj}`); // obj的类型是 object
// 向obj中添加属性
obj.name = 'Lily';
obj.gender = 'male';
obj.age = 35;
// 打印对象obj
console.log(obj); // {name: "Lily", gender: "male", age: 35}
// 采用反引号打印的结果不显示具体的对象内容
console.log(`obj = ${obj}`); // obj = [object Object]
// 读取obj的属性name的值
console.log(`obj.name = ${obj.name}`); // obj.name = Lily
// 打印未定义属性school会显示undefined并未报错
console.log(`obj.school = ${obj.school}`); // obj.school = undefined
// 修改属性name的值
obj.name = 'Jame';
console.log(obj); // {name: "Jame", gender: "male", age: 35}
// 删除属性age
delete obj.age;
console.log(obj); // {name: "Jame", gender: "male"}
总结
js中的对象类型的基本操作的更多相关文章
- js中判断对象类型的几种方法
我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...
- js中判断对象具体类型
大家可能知道js中判断对象类型可以用typeof来判断.看下面的情况 <script> alert(typeof 1);//number alert(typeof "2" ...
- js中推断对象详细类型
大家可能知道js中推断对象类型能够用typeof来推断. 看以下的情况 <script> alert(typeof 1);//number alert(typeof "2&quo ...
- 浅解析js中的对象
浅解析js中的对象 原文网址:http://www.cnblogs.com/foodoir/p/5971686.html,转载请注明出处. 前面的话: 说到对象,我首先想到的是每到过年过节见长辈的时候 ...
- JavaScript中判断对象类型方法大全1
我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...
- JavaScript中判断对象类型的种种方法
我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...
- JavaScript学习12 JS中定义对象的几种方式【转】
avaScript学习12 JS中定义对象的几种方式 转自: http://www.cnblogs.com/mengdd/p/3697255.html JavaScript中没有类的概念,只有对象. ...
- JS中有关对象的继承以及实例化、浅拷贝深拷贝的奥秘
一.属性的归属问题 JS对象中定义的属性和方法如果不是挂在原型链上的方法和属性(直接通过如类似x的方式进行定义)都只是在该对象上,对原型链上的没有影响.对于所有实例共用的方法可直接定义在原型链上这样实 ...
- Js中Map对象的使用
Js中Map对象的使用 1.定义 键/值对的集合. 2.语法 mapObj = new Map() 3.备注 集合中的键和值可以是任何类型.如果使用现有密钥向集合添加值,则新值会替换旧值. 4.属性 ...
随机推荐
- 【LeetCode】未分类(tag里面没有)(共题)
[334]Increasing Triplet Subsequence (2019年2月14日,google tag)(greedy) 给了一个数组 nums,判断是否有三个数字组成子序列,使得子序列 ...
- CSS3 多列布局——Columns
CSS3 多列布局——Columns 语法: columns:<column-width> || <column-count> 多列布局columns属性参数主要就两个属性参数 ...
- 线程数设置和CPU数的关系
一般说来,大家认为线程池的大小经验值应该这样设置:(其中N为CPU的个数) 如果是CPU密集型应用,则线程池大小设置为N+1 如果是IO密集型应用,则线程池大小设置为2N+1(因为io读数据或者缓存的 ...
- 修改Win7登陆界面墙纸
修改Win7登陆界面墙纸 修改注册表.reg Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\W ...
- Proto3语法翻译
本文主要对proto3语法翻译.参考网址:https://developers.google.com/protocol-buffers/docs/proto3 defining a message t ...
- 如何分析及处理 Flink 反压?
反压(backpressure)是实时计算应用开发中,特别是流式计算中,十分常见的问题.反压意味着数据管道中某个节点成为瓶颈,处理速率跟不上上游发送数据的速率,而需要对上游进行限速.由于实时计算应用通 ...
- Ckeditor IE下粘贴word中图片问题
自动导入Word图片,或者粘贴Word内容时自动上传所有的图片,并且最终保留Word样式,这应该是Web编辑器里面最基本的一个需求功能了.一般情况下我们将Word内容粘贴到Web编辑器(富文本编辑器) ...
- 数据导入导出mysql版本不同导致的问题
5.6.16-log导出.5.5.47-log导入 `addtime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '记录生产时间', 需要修改为: `add ...
- Sultana后记:纯css也能写col,select,datepicker,carousel...
未完待续 背景 如今css3越来越发达,focus-within等属性也已经开始在Chrome得到支持.如果有出色的css功底,一点点ps技能,你也能用css3配合原生html标签写出优秀的框架.通过 ...
- http请求方法,get 对比 post
本文转自:http://www.w3school.com.cn/tags/html_ref_httpmethods.asp 两种最常用的 HTTP 方法是:GET 和 POST. 什么是 HTTP? ...