js最底层的那些事
Posted 杨超
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js最底层的那些事相关的知识,希望对你有一定的参考价值。
- js中的数据类型分为两种:
- 原始值(Number String undefined null)它是栈数据
- 原始值如果把一个a的值给另一个b,如果改变a的值,但是b的值不会变
因为在将a的值赋给b的时候,其实是将a的的数据复制给b,他们;两个的数据是一样的,但是,他们的地址是不一样的
- 原始值如果把一个a的值给另一个b,如果改变a的值,但是b的值不会变
- 引用值(array Object function...data RegExp) 它是堆数据
- 原始值如果把一个a的值给另一个b,如果改变a的值,但是b的值也会变
因为在将a的值给b的同时,其实是将a数据的地址直接赋值给b,所以a和b现在指向的地址都是相同的数据,当a或者b在改变的时候,a和b都在变
但是,如果将a的值赋值给b后,a又重新给自己赋值,那么现在a就不和b相同了,因为重新赋值就给自己开辟了新的地址(内存)
- 原始值如果把一个a的值给另一个b,如果改变a的值,但是b的值也会变
- 原始值(Number String undefined null)它是栈数据
- 任何数据类型加字符串都等于字符串
-
var a = c && d 或者 var a = c || d
我们所说的返回为true或者false都是转换的
以上是关于js最底层的那些事的主要内容,如果未能解决你的问题,请参考以下文章