Angular中使用this关键字调用自减运算符时输出异常问题咨询
为什么
console.log(this.count--)会输出0? 这是TypeScript(和JavaScript逻辑完全一致)里后置递减运算符的特性导致的:
- 当你用
变量--这种后置写法时,运算符会先返回变量当前的原始值,再对变量执行减1操作。
对应到你的场景:
- 初始时
count的值是0 - 执行
console.log(this.count--)时,先把当前的0传递给console.log,所以控制台输出0 - 输出完成后,
count才会被减1,此时它的值变成-1
如果换成前置递减运算符(--变量),逻辑就会反过来:先执行减1操作,再返回新的值。比如写console.log(--this.count),控制台就会直接输出-1。
内容的提问来源于stack exchange,提问作者Urooj
相关产品推荐
相关产品推荐

