js数据类型分为:
基本数据类型(值类型)
1、number
2、string
3、布尔值
4、null
5、undefind
引用数据类型
1、obj
2、function
下面做一道类似于阿里的面试题,原题不是这样,但是意思跟这个一样。
let a ={
x:100
}
let b={
y:200
}
let obj={}
obj[a]='啦啦啦啦'
obj[b]='哈哈哈哈'
最后在浏览器打印出来obj是
有人问,为什么不是啦啦啦啦,而是哈哈哈哈呢,其实是因为
对象的属性名一定不能是引用类型值,默认会把引用类型值转换为字符串进行处理
当我们把a和b两个对象都转换为字符串的时候,他们会变成
所以不管是obj[a]还是obj[b]他们俩一定是相等的
所以最后会显示哈哈哈哈,而不是啦啦啦啦呀~