给字符串和数字做加法,JavaScript给出的答案有时候会让你怀疑自己的数学老师。比如‘15’+5,控制台输出的结果是20。这不是脑筋急转弯,而是JavaScript类型转换机制在起作用。
JavaScript有两种方式改变数据类型:一种由引擎自动完成,叫隐式类型转换(也叫强制转换);另一种由开发者通过Number()、String()、Boolean()等函数手动触发,叫显式类型转换。
![]()
隐式转换主要发生在算术或逻辑运算中。因为JavaScript是弱类型的,面对不匹配的类型它不会报错,而是悄悄帮你“变”一下。数字跟字符串相加时,数字会被转为字符串再拼接——通常如此,但前面‘15’+5等于20的例子却展示了另外一种结果。
做数学运算时
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.