Advanced JS 1 - Primitives vs Objects
这里首先我们要了解什么是primitives 和 objects
其实理解起来很简单. 如果我们懂.NET开发就会知道C#中的值类型和引用类型.
primitives
variables containing primitives actually hold that data inside of the variable itself.
primitives 相当于值类型.
- Numbers
- Strings
- Booleans
- Undefined
- Null
object
object not actually contain the object. It contain a reference th the place in memory.
object相当于引用类型, 我们只有获得object的指针, 而不是值本身.
- Arrays
- Functions
- Objects
- Dates
- Wrappers of Numbers, Strings, Booleans
当我们了解这块之后, 就可以理解primitives 和 object的区别了.
B在这里是获取的A的值,重新建立数字. 而不是只获取A的指向.
这里object2 没有重新建立新object, 而只是引用object1的值
function也一样. object我们使用的是reference 而不是object的值.
Primitives 在function中只是改变了copy的值而不是本身的值