JS隐式转换记录

js隐式转换,直接看代码吧。

Chrome F12 可以测试一下

const a = {};
const b = {key:'b'};
const c = {key:'c'};
a[b] = 123;
a[c] = 456;
console.log(a[b]);

输出结果多少?结果打印为 456

原因,对象属性只能是字符串类型,a[b]时会把b对象toString === "[object Object]"
所以在a[b] === a[c] === a["[object Object]"], 所以最后输出为 456

你可能感兴趣的