JS——对象

1.什么是对象

对象是什么?

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

对象有什么特点?

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

2. 对象使用

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

对象声明语法



例如:

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

对象有属性和方法组成

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

属性

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

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

增删查改

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


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

属性-查的另外一种写法

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

\]语法里面的值如果不添加引号 默认会当成变量解析 **总结:** 没有必要的时候直接使用点语法, 在需要解析变量的时候使用 \[\] 语法 > 1. 对象访问属性有哪两种方式? > 点形式 对象.属性 > \[\] 形式 对象\['属性'

  1. 两种方式有什么区别?
    点后面的属性名一定不要加引号

\] 里面的属性名一定**加引号**(因为'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

相关推荐
学嵌入式的小杨同学5 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
weixin_425543735 小时前
TRAE CN3.3.25 构建的Electron简易DEMO应用
前端·typescript·electron·vite·nestjs
Mr Xu_6 小时前
【Vue3 + ECharts 实战】正确使用 showLoading、resize 与 dispose 避免内存泄漏
前端·信息可视化·vue·echarts
0思必得06 小时前
[Web自动化] Selenium设置相关执行文件路径
前端·爬虫·python·selenium·自动化
雯0609~7 小时前
hiprint:实现项目部署与打印1-官网提供普通html版本
前端·html
yuezhilangniao7 小时前
AI智能体全栈开发工程化规范 备忘 ~ fastAPI+Next.js
javascript·人工智能·fastapi
不绝1917 小时前
UGUI——进阶篇
前端
Exquisite.8 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql
铅笔侠_小龙虾8 小时前
Flutter Demo
开发语言·javascript·flutter
2501_944525548 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 账户详情页面
android·java·开发语言·前端·javascript·flutter