当while条件中有0时,while循环会执行吗?

New*_*hen 3 javascript while-loop

我们来看看示例代码:

 var limit = 3;
 while(limit--){
   console.log(limit);
   if(limit){
     console.log("limit is true");
   }else{
     console.log("limit is false")
   }
 }
Run Code Online (Sandbox Code Playgroud)

输出将是:

2
"limit is true"
1
"limit is true"
0
"limit is false"
Run Code Online (Sandbox Code Playgroud)

有一个0,这意味着在最后一次条件时是假的.为什么最后一次循环会执行?

Sur*_*tta 8

limit--这是一个后减量.因此,当limit它在1它解析到true内部while 然后它实际上是减少因此当你打印它时0.