css - javaScript 的typeof 操作符
本文介绍了css - javaScript 的typeof 操作符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
最近遇见一道js
的题,题目是这样的。var str = 'abc' ;
typeof (str++)
;
最开始我以为返回的是String类型的值!但是结果却是Number,让我很费解!
我理解的思路是,首先拆开 str++ , 也就是str = str+1; 这不就是字符串拼接么。返回的还是str啊。
但是当我打印出来 str++ 之后 却是一个NaN的类型。typeof(NaN)
就是一个Number类型!
也就是说console.log(str++)
console.log(str = str+1)
并不是等价的!
请问这是为什么??
解决方案
javascript高级程序设计中写了,++
和--
是递增递减的一元操作符,只能操作一个数据,和加性操作符+
是不一样的,
他首先会把操作数转换为Number类型,然后进行加一或减一操作。所以str = str+1
不等于 str++
这篇关于css - javaScript 的typeof 操作符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文