1
我目前在学习如何编写代码,而且我在使用jQuery时遇到了一些困难。我试图通过我正在做的这个课程来做这个计算器作为一个项目,我碰到了一个碰撞。我不知道如何解决我的代码问题:一个问题是操作不能正常工作,也没有数字。我试着按照教程,并决定使用不同的按钮来玩弄它,但我没有得到期望的结果。这些数字应显示在整个部分,操作员应该给出数学结果。建立一个基本的计算器
你可以看到我的HTML,jQuery的完整的代码和JavaScript这里 http://codepen.io/IrvingG/pen/adRrvW
$(document).ready(function() {
var testNumLength = function(number) {
if (number.length > 9) {
totaldiv.text(number.substr(number.length - 9, 9));
if (number.length > 15) {
number = "";
totaldiv.text("Err");
}
}
};
var number = "";
var newnumber = "";
var operator = "";
var totaldiv = $("#results");
totaldiv.text("0");
$(".numbers button").not("#operators, #equals, #clear").click(function() {
number += this.html();
totaldiv.text(number);
testNumLength.text(number);
});
$("#operators").click(function() {
operator += this.html();
newnumber = number;
number = "";
totaldiv.text("0");
});
$("#clear, #clear1").click(function() {
number = "";
totaldiv.text("0");
if ($(this).attr("id") === "#clear") {
newnumber = ";"
}
});
$("#equals").click(function(){
if (operator === "+"){
number = (parseInt(number, 10) + parseInt(number, 10).toString(10));
} else if (operator === "-"){
number = (parseInt(number, 10) - parseInt(number, 10).toString(10));
} else if (operator === "/"){
number = (parseInt(number, 10)/parseInt(number, 10).toString(10));
} else if (operator === "*"){
number = (parseInt(number, 10) * parseInt(number, 10).toString(10));
}
totaldiv.text(number);
testNumLength(number);
number="";
newnumber="";
});
});
右此行之后:编号+ = this.html();添加console.log(typeof number);并看看结果。你真的获得数字,或只是字符串? – Amir
谢谢!我会试试这个。 – riv