Javascript 防止用户在JS计算器中键入多个小数点
在我的Javascript计算器项目中,我试图阻止用户输入多个小数点(如果已经有小数点的话)(例如:5.2.3.56不允许) 用户单击的所有数字、十进制和运算符按钮都被按下并存储在一个数组中 如何检查是否已经有点,并使用值数组禁用按钮Javascript 防止用户在JS计算器中键入多个小数点,javascript,arrays,decimal,calculator,Javascript,Arrays,Decimal,Calculator,在我的Javascript计算器项目中,我试图阻止用户输入多个小数点(如果已经有小数点的话)(例如:5.2.3.56不允许) 用户单击的所有数字、十进制和运算符按钮都被按下并存储在一个数组中 如何检查是否已经有点,并使用值数组禁用按钮 const numButtons = document.querySelectorAll('.number'); const opButtons = document.querySelectorAll('.operation'); const display
const numButtons = document.querySelectorAll('.number');
const opButtons = document.querySelectorAll('.operation');
const display = document.querySelector('.display');
const decimal = document.querySelector('.decimal');
let opClicked;
let resultArray = [];
// Event listeners
numButtons.forEach(number => {
number.addEventListener('click', function(e) {
numClicked = e.target.textContent;
if (display.textContent === '0') {
display.textContent = '';
} else if (resultArray[resultArray.length - 1] === opClicked){
display.textContent = '';
}
resultArray.push(numClicked);
display.textContent += numClicked
});
opButtons.forEach(operator => {
operator.addEventListener('click', function(e) {
empty();
opClicked = e.target.textContent;
resultArray.push(opClicked);
operate();
});
decimal.addEventListener('click', function(e) {
let decimalClicked = e.target.textContent;
resultArray.push(decimalClicked);
display.textContent += decimalClicked;
});
上面的代码检查resultArray是否包含小数,如果不包含小数,则将小数追加到数组中
decimal.addEventListener('click', function(e) {
var decimalClicked = e.target.textContent;
if(resultArray.includes(decimalClicked) == false){
resultArray.push(decimalClicked);
display.textContent += decimalClicked;
}
});