目录
1.转换和等价Conversions and Equality
JavaScript 对所需的值类型非常灵活。
- 当 JavaScript 需要一个布尔值时,你可以提供任何类型的值,JavaScript 会根据需要对其进行转换。 一些值(“真”值)转换为真,而其他(“假”值)转换为假。
- 如果 JavaScript 想要一个字符串,它会将你给它的任何值转换为字符串。 、
- 如果 JavaScript 需要一个数字,它会尝试将您给它的值转换为一个数字(如果它无法执行有意义的转换,则转换为 NaN)。
10 + " objects" // => "10 objects": Number 10 converts to a string
"7" * "4" // => 28: both strings convert to numbers
let n = 1 - "x"; // n == NaN; string "x" can't convert to a number
n + " objects" // => "NaN objects": NaN converts to string "NaN"
JavaScript type conversions类型转换表https://www.notion.so/9b9c808520b242d0a1af3ce57253834e
注意:空格意味着不需要转换,红色加粗意味着要特别注意
可以解析为数字的字符串将转换为这些数字。允许使用前导和尾随空格,但是任何不属于数字字面量的前导或尾随非空格字符都会导致字符串到数字的转换产生NaN。
1.转换和等价Conversions and Equality
JavaScript有两个操作符来测试两个值是否相等。
“严格相等操作符”===,如果操作数不是同一类型,则不认为其操作数相等,编码时几乎总是使用严格相等操作符。
由于JavaScript在类型转换方面非常灵活,它还定义了具有灵活相等定义的==操作符。