javascript - push() 更新数组时无法比较两个时间点的数组长度?
问题描述
我需要将数组长度的前一个状态与后一个状态(不是指状态语法)进行比较。我认为任务很简单,只需在要捕获的时间点将变量分配给新变量,然后稍后使用该变量与主变量进行比较,即;
let x = [1, 2];
const y = x;
function test() {
x.push(3, 4);
console.log(x.length > y.length);
}
test();
但由于某种原因,这会返回
false
我只有在使用时遇到这个问题push()
。一旦由于x.push(3, 4)
某种原因执行,就会更新为与推入更多数据后y
的值相同。x
这让我很困惑,因为它们在不同的范围内并在不同的时间执行?有什么我不明白的魔法push()
吗?
解决方案
推荐阅读
- python - 使用 Pywin32 裁剪内存中的位图图像
- python - 返回一个可变对象
- python - 为什么 requests 获取数据,而 scrapy 不能在 post 请求中获取数据?
- r - DiagrammeR fontsize 参数什么都不做
- error-handling - C++ Builder - 程序结束错误和本地化错误
- java - java - 如何通过在java中的单词之间添加空格来对齐文本?
- python - 在python中按天绘制散点图
- ibm-cloud - 如何在 Watson Conversation Service 中列出我的 Bot 使用的 @Cities 实体值
- c - 使用 typeof 建立单一数据类型
- javascript - JS显示属性名输入