类型强制转换:在编程语言中,系统在需要时自动或隐式把一个值从一种数据类型转换为另一种数据类型(如把字符串转换为数字),以便完成运算或比较。不同语言对其规则与风险差异很大;在 JavaScript 中尤为常见。(也可与“显式类型转换/强制类型转换”相对。)
/taɪp koʊˈɜːrʒən/
In JavaScript, "5" + 1 becomes "51" because of type coercion.
在 JavaScript 中,"5" + 1 会变成 "51",这是因为发生了类型强制转换。
Type coercion can introduce subtle bugs when loose equality comparisons make different values appear equal.
当宽松相等比较让不同的值看起来“相等”时,类型强制转换可能引入不易察觉的 bug。
type 来自希腊语 typos(印记、模子),引申为“类型/类别”;coercion 源自拉丁语 coercēre(约束、强迫)。合起来字面意思就是“把值强行按某种类型来处理”,在计算机语境中指语言按规则自动把数据转换为所需类型。