1toString() //报错,语法错误
1.toString() //报错,JS引擎无法确定这里的`.`是什么意思,是点运算符(对象方法)还是浮点数?
1..toString() //成功,运算结果"1" 解析: 第二个点被视为点运算符,前面的是浮点数。
1.0.toString() //成功,运算结果"1" 解析: 第二个点被视为点运算符,前面的是浮点数。
1 .toString() //成功,运算结果"1" 解析: 用空格和后面的.toString()隔开, 把前面的当成运算式处理
1+2.toString() //报错,JS引擎无法确定这里的`.`是什么意思,是点运算符(对象方法)还是浮点数?
1+2 .toString() //成功,运算结果"12" 解析: 用空格和后面的.toString()隔开, 把前面的当成运算式处理
(1+2).toString() //成功,运算结果"3" 解析: 括号内部的先进行算法运算,在进行类型转换
(1)+(2).toString() //运算结果"12" 解析: 括号内部进行类型修改并将数字n转换为字符串“n “,在进行拼接,然后再应用toString方法。
(1)+(2)+0 .toString() //成功,运算结果"30" 解析: 如果有多个`+`号,且不包含中括号与""的情况下,则把最后一个加号之前的进行数学运算(不管他有没有被括号包住),最后一个加号留作拼接作用。
(1)+(2)+0+(11) .toString() //成功,运算结果"311" 解析: 同上
(1)+(2)+0+12 .toString() //成功,运算结果"312" 解析: 同上
([1]+[2]+[3])+12 .toString() //成功,运算结果"12312" 解析: 如果里面只有方括号(单个数值的数组),则+起连接作用
((1)+(2)+[3])+12+43 .toString()//成功,运算结果"331243" 解析: 如果里面包含圆括号,则先要进行运算,再把运算的结果与后面的内容拼接起来。
(1)+(2)+6+2+5+"(15)"+1+0+(1) .toString() //成功,运算结果"16(15)101"解析: 如果字符串包裹的前面有多个加号,则把字符串双引号前面的进行运算(不管他有没有被圆括号包住),得到的数值拼接上字符串包裹的内容再拼接上之后的内容。
浮点数和点运算符(对象方法)
最新推荐文章于 2024-07-19 12:58:53 发布