Javascript 基础学习(六)js 的对象
定义
对象是JS中的引用数据类型。对象是一种复合数据类型,在对象中可以保存多个不同数据类型的属性。使用typeof检查一个对象时,会返回object。
分类
内置对象
由ES标准定义的对象,在任何ES的实现中都可以实现。比如 Math String Number Boolean Function Object...
宿主对象
由 JS 的运行环境提供的对象,主要指由浏览器提供的对象。比如 BOM DOM
自定义对象
由开发人员自己创建的对象
创建自定义对象
//方式一
var obj = new Object(); //使用 new 关键字调用的函数,是构造函数
//方式二
var obj = {};
对象的属性
属性名
- 对象的属性名不强制遵守标识符规范,可以使用任何名字,如 obj.var = "hello"
- 如果需要使用特殊属性名,如 obj.123 = "hello",必须使用另一种赋值方式:对象["属性名"] = "属性值"。读取时也必须使用采用上述方式
- 在 [] 中直接传递一个变量,变量值是多少就读取相应属性,更加灵活
属性值
- JS 对象的属性值可以是任意的数据类型。也可以是一个对象
向对象中添加属性
- 语法:对象.属性名 = 属性值 或 对象["属性名"] = 属性值
- 对象的属性名没有任何要求,不需要遵守标识符的规范,但是在开发中,尽量按照标识符的要求去写。
- 属性值也可以任意的数据类型。
读取对象中的属性
- 语法:对象.属性名 或 对象["属性名"]
- 如果读取一个对象中没有的属性,它不会报错,而是返回一个undefined
删除对象中的属性
- 语法:delete 对象.属性名 或 delete 对象["属性名"]
使用in检查对象中是否含有指定属性
- 语法:"属性名" in 对象
- 如果在对象中含有该属性,则返回true,如果没有则返回false。
枚举对象中的属性
- 语法:for(var 属性名 in 对象){ ... }
- for...in语句的循环体会执行多次,对象中有几个属性就会执行几次,每次讲一个属性名赋值给我们定义的变量,我们可以通过它来获取对象中的属性
基本数据类型和引用数据类型
- 基本数据类型:String Number Boolean Null Undefined
- 引用数据类型:Object
- JS 中的变量都是保存到栈内存中
- 基本数据类型
- 基本数据类型的值直接在栈内存中存储,变量是直接保存的它的值。
- 变量与变量之间是互相独立的,修改一个变量不会影响其他的变量。
- 引用数据类型
- 对象是保存到堆内存中,每创建一个新的对象,就会在堆内存中开辟出一个新的空间
- 引用数据类型的数据,变量是保存的对象的引用(内存地址)
- 如果多个变量指向的是同一个对象,此时修改一个变量的属性,会影响其他的变量。
- 比较两个变量时,对于基本数据类型,比较的就是值,对于引用数据类型比较的是地址,地址相同才相同
- 基本数据类型
使用对象字面量,在创建对象时直接向对象中添加属性
var obj = {
属性名:属性值,
属性名:属性值,
属性名:属性值,
属性名:属性值
}
Javascript 基础学习(六)js 的对象的更多相关文章
- JavaScript基础学习(六)—函数
一.函数的定义 1.function语句形式 //1.function语句式 function test1(){ alert("I am test1"); } test1(); 2 ...
- js基础学习之-js包装对象
var test = "test"; test.a = "hello"; console.log(test.a); //undifined 定义: 在JavaS ...
- js基础学习之-js全局对象
声明的三种方式: 第一种: var test; //或var test = 5; 第二种: test = 5; 第三种: window.test; //或window.test = 5; //只是使用 ...
- JavaScript学习06 JS事件对象
JavaScript学习06 JS事件对象 事件对象:当事件发生时,浏览器自动建立该对象,并包含该事件的类型.鼠标坐标等. 事件对象的属性:格式:event.属性. 一些说明: event代表事件的状 ...
- JavaScript 基础学习(二)js 和 html 的结合方式
第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...
- JavaScript 基础学习1-day14
JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...
- 48.javascript基础学习
javascript基础学习: http://www.w3school.com.cn/jsref/index.asp jS的引入方式: 1.行间事件:为某一个具体的元素标签赋予js内容,oncli ...
- JavaScript 基础 学习(三)
JavaScript 基础 学习(三) 事件三要素 1.事件源: 绑定在谁身上的事件(和谁约定好) 2.事件类型: 绑定一个什么事件 3.事件处理函数: 当行为发生的时候,要执行哪一个函数 ...
- JavaScript 基础 学习 (二)
JavaScript 基础 学习 节点属性 每一个节点都有自己的特点 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) 语法:节点.nodeT ...
- JavaScript 基础 学习 (一)
JavaScript 基础 学习 获取页面中的元素的方法 作用:通过各种方式获取页面中的元素 比如:id,类名,标签名,选择器 的方式来获取元素 伪数组: 长的和数组差不多,也是按照索引排 ...
随机推荐
- Asp.Net Core 3.1 Api 集成Abp项目依赖注入
Abp 框架 地址https://aspnetboilerplate.com/ 我们下面来看如何在自己的项目中集成abp的功能 我们新建core 3.1 API项目和一个core类库 然后 两个项目都 ...
- idea怎么关闭项目
原文地址:https://jingyan.baidu.com/article/a3a3f8112169e78da2eb8a8d.html idea关闭项目可以按File-CloseProject按钮实 ...
- vwmare 十月第 1 弹
step one 不管 是 ubuntu 还是 win vm tools 都是需要在虚拟的系统里面的去安装的. 这一点是相同的.
- MVC 记录
ASP.NET MVC框架提供了一个帮助我们构造Html元素的类:TagBuilder ps url cnblogs.com/yibinboy/articles/5187682.html HttpRu ...
- 浅显易懂的前端知识点(二)——HTTP协议基础
HTTP 协议的初印象: 是基于 TCP/IP 协议的应用层协议,不涉及数据包的传输,主要规定了客户端和服务器之间的通信格式,默认使用 80 端口. 1 HTTP 协议 0.9 版(1991 年) 是 ...
- springboot-mybatis配置问题
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
- 最简单的基于FFMPEG+SDL的视频播放器:拆分-解码器和播放器
===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...
- latex使用总结
1 输入双引号以及单引号: 双引号:按两下 Tab键上方的键, 再按两下单引号键. 单引号:按一下Tab键上方的键,再按一下单引号键. 原文地址 2 时间复杂度的O写法: $\mathcal{O}$ ...
- 微信小程序如何添加新的icon图标
第一步 先去阿里云下载图标http://www.iconfont.cn/ 根据需要把图片的代码下载下来,下载完成之后是一个 压缩包,解压压缩包里面有一个css的文件复制到项目中,更改后缀为wxss 第 ...
- Java集合中removeIf的使用
在JDK1.8中,Collection以及其子类新加入了removeIf方法,作用是按照一定规则过滤集合中的元素.这里给读者展示removeIf的用法.首先设想一个场景,你是公司某个岗位的HR,收到了 ...