JS——对象

1.什么是对象

对象是什么?

·对象是一种数据类型
·无序的数据的集合( 数组是有序的数据集合 )

对象有什么特点?

·无序的数据的集合
· 可以详细地描述某个事物
静态特征 (姓名, 年龄, 身高, 性别, 爱好) => 可以使用数字, 字符串, 数组, 布尔类型等表示
动态行为 (点名, 唱, 跳, rap) => 使用函数表示

2. 对象使用

目标:掌握对象语法,用它保存多个数据

对象声明语法



例如:

实际开发中,我们多用花括号。 {} 是对象字面量

对象有属性和方法组成

属性:信息或叫特征(名词)。 比如 手机尺寸、颜色、重量等...
方法:功能或叫行为(动词)。 比如 手机打电话、发短信、玩游戏...

属性

数据描述性的信息称为属性,如人的姓名、身高、年龄、性别等,一般是名词性的。

· 属性都是成对出现的,包括属性名和值,它们之间使用英文 : 分隔
· 多个属性之间使用英文 , 分隔
· 属性就是依附在对象上的变量(外面是变量,对象内是属性)
· 属性名可以使用 "" 或 '', 一般情况下省略 ,除非名称遇到特殊符号如空格、中横线等

增删查改

对象本质是无序的数据集合, 操作数据无非就是 增 删 改 查 语法:


改 和 增 语法一样,判断标准就是对象有没有这个属性, 没有就是新增,有就是改

属性-查的另外一种写法

对于多词属性或则 - 等属性,点操作就不能用了。
我们可以采取: 对象['属性'] 方式, 单引号和双引号都可以
也可以用于其他正常属性

[]语法里面的值如果不添加引号 默认会当成变量解析
总结:
没有必要的时候直接使用点语法, 在需要解析变量的时候使用 [] 语法

  1. 对象访问属性有哪两种方式?
    点形式 对象.属性
    [] 形式 对象['属性']
  2. 两种方式有什么区别?
    点后面的属性名一定不要加引号
    [] 里面的属性名一定加引号(因为'user-name'这个变量名本身有引号)
    后期不同使用场景会用到不同的写法

对象中的方法

遍历对象


一般不用这种方式遍历数组、主要是用来遍历对象
for in语法中的 k 是一个变量, 在循环的过程中依次代表对象的属性名
由于 k 是变量, 所以必须使用 [ ] 语法解析
一定记住: k 是获得对象的 属性名对象名[k] 是获得 属性值

3. 内置对象-Math

介绍: Math对象是JavaScript提供的一个"数学"对象
作用: 提供了一系列做数学运算的方法
Math对象包含的方法有:
·random:生成0-1之间的随机数(包含0不包括1)
·ceil:向上取整
·floor:向下取整
·max:找最大数
·min:找最小数
·pow:幂运算
·abs:绝对值

内置对象-生成任意范围随机数

Math.random() 随机数函数, 返回一个0 - 1之间,并且包括0不包括1的随机小数 [0, 1)
如何生成0-10的随机数呢?
Math . floor ( Math . random () * ( 10 + 1 ))
如何生成5-10的随机数?
Math . floor ( Math . random () * ( 5 + 1 )) + 5
如何生成N-M之间的随机数

Math . floor ( Math . random () * ( M - N + 1 )) + N

相关推荐
寻找沙漠的人35 分钟前
前端知识补充—CSS
前端·css
GISer_Jing1 小时前
2025前端面试热门题目——计算机网络篇
前端·计算机网络·面试
m0_748245521 小时前
吉利前端、AI面试
前端·面试·职场和发展
理想不理想v1 小时前
webpack最基础的配置
前端·webpack·node.js
pubuzhixing1 小时前
开源白板新方案:Plait 同时支持 Angular 和 React 啦!
前端·开源·github
2401_857600951 小时前
SSM 与 Vue 共筑电脑测评系统:精准洞察电脑世界
前端·javascript·vue.js
2401_857600951 小时前
数字时代的医疗挂号变革:SSM+Vue 系统设计与实现之道
前端·javascript·vue.js
GDAL1 小时前
vue入门教程:组件透传 Attributes
前端·javascript·vue.js
小白学大数据1 小时前
如何使用Selenium处理JavaScript动态加载的内容?
大数据·javascript·爬虫·selenium·测试工具
2402_857583491 小时前
基于 SSM 框架的 Vue 电脑测评系统:照亮电脑品质之路
前端·javascript·vue.js