JavaScript是否使用if条件运行一次?

Vin*_*hua 1 javascript if-statement conditional-statements

我想做的是只运行一次if语句并禁用该语句。在我的代码中,如果我连续单击按钮,则if语句仍会呈现。这是为什么?

HTML:

<button onclick="appendMsg()">submit</button>
<div id="wrapper"></div>
Run Code Online (Sandbox Code Playgroud)

Javascript:

function appendMsg(){

  var triggerOnceforShare = true;

  if(triggerOnceforShare){
     triggerOnceforShare = false;
    document.getElementById('wrapper').innerHTML+=triggerOnceforShare + "<br />"
    console.log(triggerOnceforShare);
  }

}
Run Code Online (Sandbox Code Playgroud)

codepen:http://codepen.io/vincentccw/pen/uoBkI

Vad*_*est 6

您应该将var triggerOnceforShare = true;函数放在全局之外,它将起作用。

var triggerOnceforShare = true;
function appendMsg(){   
  if(triggerOnceforShare){
    triggerOnceforShare = false;
    document.getElementById('wrapper').innerHTML+=triggerOnceforShare + "<br />"
    console.log(triggerOnceforShare);
  }
} 
Run Code Online (Sandbox Code Playgroud)