2-js-objects-backend
JavaScript 对象 — 后端注释
重点:后端数据处理、API、reduce、符号、解构
1️⃣ 对象字面量
对象banane ka sab se common tareeqa。
1 | const user = { |
{}se 直接对象 banta hai- Har baar naya 对象记忆 mein banta hai
1 | const a = {}; |
2️⃣ 单例对象(概念)
Singleton 语法 nahi,模式 hai。
MATLAB:
badi app mein ek hi 对象实例使用 ho
1 | const config = { |
- Har file jo import karegi → 相同对象 Milega
- 后端我的缓存、配置、数据库连接可以使用hota
3️⃣ 对象键 — 数字与字符串
JavaScript 对象 ki 键 hamesha 字符串 hoti hain。
1 | const box = {}; |
MATLAB:
1 | box[1] === box["1"] // true |
4️⃣ 括号与点符号
点符号
1 | user.name |
- 固定键
- 简单的访问
括号表示法
1 | user["name"] |
- 动态键
- 通过访问变量ke
⚠️重要:
1 | user[name] // name is a variable, NOT "name" |
5️⃣ 对象中的符号
符号 ek 独特的钥匙 hoti hai。
1 | const mySymbol = Symbol("key"); |
- 符号键字符串 nahi hoti
- 点符号 se 访问 nahi hoti
1 | obj[mySymbol] // works |
6️⃣ 函数作为对象属性
JavaScript mein 函数 bhi 值 hoti hai。
1 | const user = { |
致电 karne ke tareeqay:
1 | user.greet(); |
7️⃣ 对象解构
对象se直接值nikaalna。
1 | const course = { |
解构期间重命名
1 | const { courseInstructor: instructor } = course; |
MATLAB:
1 | course.courseInstructor → instructor |
8️⃣ 使用对象减少(最重要🔥)
每个键的总和
1 | const totals = payments.reduce((box,p)=>{ |
逻辑:
- 琼脂键 pehli dafa aaye → 0 se 开始
- 琼脂存在 karti ho → 添加 karo
按键分组
1 | const grouped = logs.reduce((box,l)=>{ |
逻辑:
- 琼脂阵列存在 nahi → pehle banao
*菲尔推卡罗
9️⃣ 为什么需要if(!box[key])
1 | if(!box[user]){ |
原因:
.push()Sirf 数组 pe chalta haiundefined.push()崩溃卡塔海
10️⃣ 对象与地图
| 特色 | 对象 | 地图 |
|---|---|---|
| 钥匙类型 | 仅字符串 | 任何类型 |
| JSON 支持 | ✔ | ❌ |
| 订单 | 不可靠 | 保存 |
| 后端使用 | API数据 | 缓存 |
11️⃣ 后端使用总结
对象后端我使用 hote hain 来:
- API响应
- 配置
- 对数据库数据进行分组
- 缓存
- 权限映射
🧠 黄金法则
- 对象键是字符串
- 括号表示法计算表达式
- 减少 = 寄存器更新
[]→ 分组0→ 求和
📌 最后的想法
后端对象是关于数据转换,而不是 UI 状态
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 xhj的博客!