如何解决如何在数组中推送新元素随着数量的增加?
我有一个带有几个节点的网格。当我在网格上移动鼠标时,row
和 col
的值会发生变化。
例如:
const handleMouseEnter = (row,col) => {
console.log(row,col);
};
这些是坐标。
问题是:随着这些值的增长,我如何将它们存储在数组中?我尝试使用这样的推送功能来做到这一点:
const handleMouseEnter = (row,col) => {
const coordinatesVisited = [];
coordinatesVisited.push(row,col);
console.log(coordinatesVisited);
};
但它只是返回给我:
最后我希望所有这些数组都在一个数组中。网格很小,所以性能问题不会有任何问题。数组可以一次又一次地被覆盖。
编辑: 使用此代码,仅当 log 语句位于函数内部时才会记录 1-2 个值,但不会保留任何内容。
const coordinatesVisited = [];
const handleMouseEnter = (row,col) => {
coordinatesVisited.push([row,col]);
};
console.log(coordinatesVisited);
解决方法
因为每次 const 都声明新的数组变量。所以你需要像全局变量一样在函数调用之前声明数组
const coordinatesVisited = []; // declare as global
const handleMouseEnter = (row,col) => {
coordinatesVisited.push(row,col);
console.log(coordinatesVisited);
};
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。