javascript - 当我将元素推入数组时,第一个元素被删除并替换为最近的元素
问题描述
我想将元素添加到数组中,当我添加它时,第一个被最近的替换,依此类推,所以我如何动态推送而不替换前一个
我想将元素添加到数组中,当我添加它时,第一个被最近的替换,依此类推,所以我如何动态推送而不替换前一个。
let calculator = document.querySelector(".calculator"),
calc_screen = document.querySelector(".calculator-screen"),
calc_keys = document.querySelector(".calculator-keys");
try{
calculator,
calc_screen,
calc_keys
}catch(error){
console.log("this doesn't exist")
}
calculator.addEventListener("click",function(e){
let arr = [];
arr.push(e.target.textContent)
console.log(arr)
if(e.target === calc_keys){
e.stopPropagation(calc_keys)
}else{
calc_screen.value+=e.target.textContent;
let operators = document.querySelectorAll(".operator");
operators.forEach(function(op){
if(calc_screen.value[0] === op.textContent){
calc_screen.value = calc_screen.value.slice(1)
}
})
}
if(calc_screen.value.includes("AC")){
calc_screen.value = "";
}
// if(calc_screen.value[0] === ""){
// alert(true)
// }
})
解决方案
arr
这是在单击时重置。
calculator.addEventListener("click",function(e){
let arr = [];
arr.push(e.target.textContent);
之前设置
let arr = [];
calculator.addEventListener("click",function(e){
arr.push(e.target.textContent);
推荐阅读
- java - 关于将 mysql 连接器与 intellij 连接的问题
- mysql - 为什么我不能在 MYsql 上删除表?
- r - 在 R 中自动生成代码以创建数据框
- python - 是否有一个简单的 python 3 命令可以在多列上复制 matlab 的 interp1 命令?
- c# - 数据库 sqlite 中的项目未更新 (Xamarin.Forms)
- html - 将页脚推到 flexbox 底部
- python-3.x - 一段代码的语法错误被接受为 str.join 的参数
- typescript - 在 TypeScript 中将对象值转换为类枚举类型
- python - 尝试在 Python 3 子进程中运行 rsync 时出现 args 问题
- click - 点击此代码的准确性必须小于 5 毫秒 但是为什么不呢?