Строка parseInt()
parseInt($("#display").append($(this).val());
не вернет то, что, по вашему мнению, она вернет, parseInt()
попытается проанализировать результат .append()
, который не является числовым значением c, это то, как я думаю, вы может реализовать это:
Также примечание по безопасности, пожалуйста, постарайтесь избегать использования eval()
, проверьте это : Никогда не используйте eval
$(function () {
$("input.inp").on("click", function () {
let solv = $(this).val();
if (solv != "ans") {
$("#display").append(solv);
}
if (solv == "ans") {
let solve = $("#display").text();
const result = calculateResult(solve);
$("#ans").html(result);
}
});
});
function calculateResult(js) {
return Function('"use strict";return (' + js + ")")();
}
.inp {
font-weight: bolder;
font-size: 5vw;
width: 13vw;
height: 13vw;
margin-bottom: 2vw;
margin-top: 2vw;
}
input:hover {
color: red;
}
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" />
<meta charset="UTF-8" />
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.1.js"></script>
<meta name="viewport" content="wclassth=device-wclassth, initial-scale=1.0" />
</head>
<body>
<p>
Answer will be shown here: <span id='ans'></span>
</p>
<table style="background: black; padding: 2vw; wclassth: 60vw; margin-left: 20vw;">
<th><div id="display" style="wclassth: 56vw; height: 15vw; background: skyblue; font-weight: bolder; font-size: 5vw; color: red;"></div></th>
<tr>
<td>
<input class="inp" type="button" value="1" />
<input class="inp" type="button" value="2" />
<input class="inp" type="button" value="3" />
<input class="inp" type="button" value="+" />
</td>
</tr>
<tr>
<td>
<input class="inp" type="button" value="4" />
<input class="inp" type="button" value="5" />
<input class="inp" type="button" value="6" />
<input class="inp" type="button" value="-" />
</td>
</tr>
<tr>
<td>
<input class="inp" type="button" value="7" />
<input class="inp" type="button" value="8" />
<input class="inp" type="button" value="9" />
<input class="inp" type="button" value="*" />
</td>
</tr>
<tr>
<td>
<input class="inp" type="button" value="." />
<input class="inp" type="button" value="0" />
<input class="inp" type="button" value="/" />
<input class="inp" type="button" value="ans" />
</td>
</tr>
</table>
</body>
</html>