Javascript对象

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/6

flashcard set

Earn XP

Description and Tags

这些闪卡涵盖了Javascript对象的基础知识、拷贝方法及其比较、陷阱识别等内容。

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

7 Terms

1
New cards

JS对象的核心特征

复合数据型,键值对集合(键:字符串/Symbol,值:任意类型),动态性(随时增删属性),原型链继承机制。

2
New cards

JS对象赋值时发生的情况

内存地址引用(非对象本身),修改 obj2 会影响 obj1,obj1 === obj2 为真。

3
New cards

浅拷贝的常用方法

方法1:展开运算符 {…original};方法2:Object.assign({}, original);注意陷阱,嵌套对象的引用。

4
New cards

深拷贝方法优缺点比较

JSON.parse/stringify对基础对象支持好但丢失函数/Symbol;structuredClone()支持循环引用但不支持函数;Lodash库 _.cloneDeep支持复杂对象但需引入外部库。

5
New cards

何时使用浅拷贝?何时必须深拷贝?

浅拷贝适用场景:简单配置对象、性能敏感、需要共享嵌套;深拷贝必需场景:状态管理库、不可变数据、多层嵌套对象。

6
New cards

深浅拷贝核心差异记忆口诀

浅拷贝:快又省,共享引用要小心;深拷贝:独立强,性能稍差无影响。

7
New cards

导致问题的代码示例

const original = { date: new Date(), fn: () => console.log('Hi') }; const copy = JSON.parse(JSON.stringify(original)); 导致 copy.date 变成字符串,copy.fn 为 undefined。正确方法为:structuredClone() 或 Lodash.