({} + 'b' > {} + 'a')返回值是 true

发布时间 2023-11-11 00:21:27作者: 龙陌

({} + 'b' > {} + 'a')返回值是true

console.log({} + 'b') "[object Object]b"
console.log({} + 'a') "[object Object]a"
console.log(({} + 'b' > {} + 'a')) true

1.“+”连接字符会转换为字符
2.“+”优先级高于“>”
3.“>”运算符比较字符串大小时,会把字符串转换为ASCII码依次比较,这里很明显b大于a

1、括号会让编译器将其解释为一句表达式,不加{}会被单独分开解释

2、ASCII码进行比较b比a大