根据我的理解: - 原型类型测试是否相等
'lol' === 'lol'
true
Run Code Online (Sandbox Code Playgroud)
是的,因为内容是相同或真实的,因为内存中的对象ID是相同的?
- 用于身份的复合类型测试
[1,2,3] === [1,2,3]
false
Run Code Online (Sandbox Code Playgroud)
是因为引用变量是diff或diff,因为内存中的对象ID是diff?
我希望能够区分:
A)引用变量
B)标识符(命名空间)
C)内存中的实际对象
D)ID
是否有命令允许我单独测试这些东西?
'lol'==='lol' 给你true,因为它是一个字符串文字.它属于pass by value类别,并且内存中的位置相同.
但是,如果你做了类似的事情
var s1=new String('lol');
var s2=new String('lol');
s1===s2 //returns false
Run Code Online (Sandbox Code Playgroud)
因为s1和s2是字符串对象并且按引用类别传递.值指向内存中的不同位置
[1,2,3]===[1,2,3]也会返回false,因为数组是Javascript中的默认对象.JS中没有原始形式的数组.它们属于参考类别,内存位置不同.
| 归档时间: |
|
| 查看次数: |
103 次 |
| 最近记录: |