壹题git
第 116 题:输出如下代码运行结果
1 + '1'
2 * '2'
[1, 2] + [2, 1]
'a' + + 'b'
复制代码
加法运算符的做用是数值求和或者字符串拼接。只要有一个操做数是字符串,即为字符串拼接。github
1 + '1' // '11'
复制代码
乘法运算符的结果是操做数的乘积。故对操做数进行 ToNumber 类型转换。spa
2 * '2' // 4
复制代码
两个对象的值进行 + 运算符,确定要先进行隐式类型转换为原始类型才能进行计算。code
[1, 2] + [2, 1] // '1, 22, 1'
复制代码
一元正号运算符位于其操做数前面,计算其操做数的数值,若是操做数不是一个数值,会尝试将其转换成一个数值。 尽管一元负号也能转换非数值类型,可是一元正号是转换其余对象到数值的最快方法,也是最推荐的作法,由于它不会对数值执行任何多余操做。它能够将字符串转换成整数和浮点数形式,也能够转换非字符串值 true,false 和 null。小数和十六进制格式字符串也能够转换成数值。负数形式字符串也能够转换成数值(对于十六进制不适用)。若是它不能解析一个值,则计算结果为 NaN。对象
'a' + (+ 'b') // 'aNaN'
复制代码