2017-01-02 53 views
0

我的代码是这样的:重置操作

//*Global variables* 
var numStr=""; 
var symbol=""; 
var numero=[]; 
var total=0; 
var totaldisplay=""; 
//... 
//*Event* 
$("button").click(function(){ 
    var key=$(this).html(); 
    // *if statements* 
    if(/\d{1,}|\./.test(key)){ 
      numStr+=key; 
      totalDisplay+=key; 
        } 

    if(/÷|\+|-|×/.test(key)) { 
      symbol=key; 
      numero.push(parseFloat(numStr)); 
      numStr=""; 
      totalDisplay+=key; 

      } 
    if(/=/.test(key)){ 
     numero.push(parseFloat(numStr)); 
     numStr=""; 
     .... 
     total= // *Operations* 

     totalDisplay+="="+total; 


} 

    //.... 
    $("#display2").html(totalDisplay); 

}) 

我觉得我没字的问题妥善我的第一篇。 它是一个计算器,用户点击该按键并将其累加在计算器的显示中。

实施例:

  • 第一次单击2:numStr="2" and totalDisplay="2"
  • 第二次点击4:​​。
  • 第三次点击+:symbol="+"numStr converted into a type number and pushed into the array numero,numStr=""totalDisplay="24+"
  • 第四次点击9:numStr=9totalDisplay="24+9"
  • 第五点击=:numStr converted into a type number and push into the array numeronumStr="",它使操作和totalDisplay="24+9=33"

  • (问题)第六点击7:numStr="97""totalDisplay="24+9=337"。 如何在第一次操作完成后重新开始第二次操作。 因此,在第五次单击之后,显示第一个操作,所有变量都设置为0或空字符串“”;并与第六次点击 numStr="7"totalDisplay="7"

+0

这是一个无效的JavaScript。 –

+0

您可以点击'numStr =''来重置它。总数= 0;'在做任何事之前。 – Jai

回答

0

重置点击处理程序开始处的变量。

$("button").click(function() { 
 
    numStr = ""; 
 
    var key = $(this).html(); 
 
    //if statements * 
 
    if (/\d{1,}|\./.test(key)) { 
 
    numStr += key; 
 
    } 
 
    // .... 
 
})

0

尝试重置您的单击事件中的全局变量。

希望这有助于...

0

你应该做这样的事情 -

var numStr=""; 
var total=0; 

$("button").click(function(){ 
    // Variable should always be defined at top of function definition. 
    var key = $(this).html(); 

    // Early return, it's a good practise 
    if(!(/\d{1,}|\./.test(key))){ 
     return; 
    } 

    numStr = key; 
}) 
0

试试这个

//*Global variables* 
var numStr=""; 
var total=0; 
//... 
//*Event* 
$("button").click(function(){ 
    var numStr = ""; 
    var key=$(this).html(); 
    // *if statements* 
    if(/\d{1,}|\./.test(key)){ 
      numStr+=key;} 
    //.... 
})