如何更新一个Javascript对象数组而不更新另一个[重复]

2024-03-11

我创建了一个包含一些值的对象数组。然后我创建了另一个对象数组并用第一个对象数组对其进行初始化。然后我在第二个数组中推送一个值,控制台记录了两个数组。两个数组具有相同的值。为什么会发生这种情况?我们怎样才能阻止这种情况?

My Code:

var a = { "filters": [] }; // 1st object array
var keyValue = {};
// pushed 2 values in "a" array
keyValue["abc"] = "123";
a.filters.push(keyValue);
keyValue["def"] = "456";
a.filters.push(keyValue);
var b = a; // created another object array & initialized it with "a" array
var keyValue1 = {};
// pushed 1 value in "b" array
keyValue1["ghi"] = "789";
b.filters.push(keyValue1);
console.log(a);
console.log(b);

这将为 a 和 b 打印相同的值。
如何将值推入第二个数组而不更新第一个数组?


作业如var b = afor a 对象创建一个对象“b”,该对象通常引用(就像指针一样)“a”指向的相同位置。你可能会发现这个link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/var有帮助。

但是您可以使用以下命令创建/克隆一个新数组slice方法。var b = a.slice()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更新一个Javascript对象数组而不更新另一个[重复] 的相关文章

  • 单击上一页的按钮路由到该页面后如何刷新页面

    我有 2 个页面 一个主页和一个页面 2 当我单击主页上的按钮时 它会路由到 page2 现在 单击主页上的按钮后 当我到达第 2 页时 它应该刷新 因为我的项目中存在一些缓存问题 我在ngoninit上添加了window location
  • 如何使用 JavaScript 将当前页面设置为 about:blank?

    我遇到的情况是服务器可能在当前地址上不可用 因此我想检测到这一点并将页面重定向到 about blank 页面 我该如何使用 JavaScript 来做到这一点 window location href about blank
  • 将随机字符串转换为十六进制颜色

    我的应用程序中有一个操作日志表 我想根据该条目的 sessionID 为行分配随机颜色 以帮助查看模式 分组操作 到目前为止我有这个 console log stringToColorCode mj3bPTCbIAVoNr93me1I fu
  • 查找所有数组的长度多维数组,Java

    我想使用多维数组来存储数据网格 但是 我还没有找到一种简单的方法来查找长度2nd数组的一部分 例如 boolean array new boolean 3 5 System out println array length 只会输出3 是否
  • 使用 for 循环 Python 为数组赋值

    我正在尝试将字符串的值分配给不同的数组索引 但我收到一个名为 列表分配超出范围 的错误 uuidVal distVal uuidArray distArray for i in range len returnedList for beac
  • VB - 如何读取和写入二进制文件?

    如何从任何文件读取原始字节数组 Dim bytes as Byte 然后将该字节数组写回到新文件中 我需要它作为字节数组来在两者之间进行一些处理 我目前正在使用 To read Dim fInfo As New FileInfo dataP
  • 在 Javascript 中动态添加事件处理程序

    我在使用 Javascript 时遇到了一个奇怪的问题 我得到的是一个特定格式的字符串 我将尝试用它创建一个表 该表每行只有一个单元格 字符串的格式为 每个单元格 行 需要显示内容 将传递给的参数onmouseover当用户将鼠标移动到显示
  • JavaScript 中的正则表达式用于验证十进制数字

    我想要 JavaScript 中的正则表达式来验证十进制数字 它最多只允许两位小数 例如 它应该允许10 89但不是10 899 它还应该只允许一个句点 例如 它应该允许10 89但不是10 8 9 尝试使用以下表达式 d d 0 2 如果
  • 通过 Javascript 将图像切割成碎片

    我正在创建一个简单的拼图游戏 为了做到这一点 我需要将我正在使用的图片切成 20 块 Javascript 有没有办法将一张图片切成 20 个相等的部分 并将它们保存为网页中的 20 个不同的对象 或者我只需要进入 Photoshop 自己
  • 缩放事件侦听器之前的 Javascript OpenLayers

    我正在尝试将 OpenLayers 设置为在缩放开始之前不显示矢量图层 并使其在缩放结束后重新出现 我已经像这样建立了缩放结束部分 map new OpenLayers Map map element eventListeners zoom
  • Ajax JSON 数据和灯箱冲突

    我有一个带有灯箱插件的画廊设置光廊 http sachinchoolur github io lightGallery docs 该画廊与静态 HTML 完美配合 当我动态抓取 API 数据并尝试让灯箱处理这些项目时 问题就出现了 我似乎无
  • express 或express-generator:我需要两者吗?

    只是探索 Node js 并遇到了 Express 在 npm 存储库站点上https www npmjs com package express https www npmjs com package express它明确指出安装是 np
  • Angular 2 runOutsideAngular 仍然改变 UI

    从我的理解来看runOutsideAngular https angular io docs ts latest api core index NgZone class html runOutsideAngular anchor 如果我需要
  • 在overlayImage中应用滤镜的方法在哪里?

    我想在overlayImage中应用一个过滤器 唯一的方法是在渲染后在整个画布上应用过滤器 对此没有内置支持 但很容易 破解 var overlayImageUrl load overlay image first fabric Image
  • 如果多个键是相同的 JS,则对对象中的值求和

    例如我有 5 个对象 row aa col 1 value 1 row bb col 2 value 1 row bb col 3 value 1 row aa col 1 value 1 row aa col 2 value 1 我想对值
  • Sequelize.js - “不关联到”

    我在从数据库获取完整数据时遇到一些问题 那是我的模型 User module exports function sequelize DataTypes return sequelize define user id type DataTyp
  • 是否有一种算法可以在线性时间内计算数组反转?

    我知道有多少倒转 en wikipedia org wiki Inversion 28discrete mathematics 29 in an n 元素数组可以在 O n log n 操作使用增强型归并排序 http www geeksf
  • 一个接一个地淡入div

    大家好 我很擅长 HTML 和 CSS 但才刚刚开始接触 jQuery 的皮毛 我希望让 3 个 div 在页面加载时逐渐淡入 到目前为止我有这个 我听说使用 css 将显示设置为 none 对于任何使用非 JavaScript 浏览器的人
  • Jquery 两个字段的时间差(以小时为单位)

    我的表单中有两个字段 用户可以在其中选择输入时间 start time end time 我想在更改这些字段时重新计算另一个字段的值 我想做的是获取两次之间的小时数 例如 如果我的开始时间为 5 30 结束时间为 7 50 我想将结果 2
  • 将 div 文本分配给变量然后显示它

    我有一个简单的任务 我试图完成学习 JavaScript 但一直无法找到明确的答案 这是代码 div Testing div 基本上我希望将方框 div 中的文本存储到变量中 然后 我想在页面的不同部分显示该变量的文本 使用上面的代码我得到

随机推荐

  • 在 spring-boot 中将 hashmap 转换为 json 字符串

    我正在创建一个 spring boot 应用程序 我希望能够将 hashmap 的全部内容作为 json 字符串返回 我怎么做 我的哈希图如下所示 private static final Map
  • Repa 中的转置和累积和性能不佳

    我开发了一个累积和函数 在 Haskell 库 Repa 中定义如下 但是 当将此函数与转置操作结合使用时 我遇到了问题 以下所有 3 个操作只需不到一秒 cumsum cumsum cumsum x transpose transpose
  • 关于 JPA 2.0 Criteria 的一些基本问题

    我今天发现了 JPA 2 0 Criteria API 并想学习它 只是浏览了一些示例并尝试动手操作 我有一个带有列的餐桌水果 id name color size taste 常规的东西 EntityManagerFactory emf
  • Python:使用渐进数字重命名列表中的重复项,而不对列表进行排序

    给定一个这样的列表 mylist name state name city name zip zip 我想通过附加数字来重命名重复项以获得以下结果 mylist name1 state name2 city name3 zip1 zip2
  • Angular/Ionic 和异步 SQLite - 确保数据工厂在返回前初始化

    我正在使用 Ionic 编写 PhoneGap Cordova 应用程序 并使用 SQLite 与 ngCordova 进行持久存储 该应用程序的核心是从 SQLite 数据库检索的项目的滚动列表 列表控制器 js controller L
  • 以 maner 设置 JTextField 宽度以换行给定文本

    我有一个不可编辑且已禁用的JtextField我将在其中放一个String请求数据库后获得 我希望这个JtextField包裹我所有的字符串 我看到了setColumn and setSize 方法 但我首先不知道我的String leng
  • XMLHttpRequest 将变量传递给 php 脚本

    我正在尝试使用 XMLHttpRequest 将变量传递给 php 脚本 然后让 php 回显它 我不明白为什么它不起作用 有人可以帮助我吗 这是 JavaScript
  • 为什么清除中断标志会导致C中的分段错误?

    我正在学习一些有关汇编和 C 的基础知识 出于学习目的 我决定编写一个禁用中断的简单程序 当用户想要在控制台中输入某些内容时 他 她不能 include
  • 以编程方式运行 Spring Batch Job?

    我有一个 Spring Batch 应用程序 我从以下开始CommandLineJobRunner 但现在我必须将此应用程序嵌入到我们的企业环境中 我们有一个自己的启动器应用程序 我必须使用它 对于这个启动器应用程序 我需要一个带有 mai
  • RenderRepaintBoundary 到图像而不将 Widget 添加到屏幕

    我正在尝试从小部件导出图像 而不将此小部件添加到屏幕 这可能吗 我已经通过添加到可滚动容器成功导出它 现在我想渲染它而不将其添加到屏幕并将其保存到临时文件以供共享 我认为那里应该有一个 paint 调用 但无法弄清楚到底在哪里 这是我的代码
  • Swift 算术和比较运算符重载的数字列表?

    文档中是否有一个地方或者我可以在 Xcode 6 中动态查找的地方显示了数字的所有定义的运算符重载 例如二进制算术和比较运算符 Swift 支持所有数字类型的四种标准算术运算符 加法 减法 乘法 分配 Swift 支持所有标准 C 比较运算
  • @Security 注释的自定义消息

    我正在尝试使用 Security我的路线的注释 像这样 return Response Route action Security has role ROLE USER Template public function someAction
  • CGBitmapContextCreate:无效数据字节/行

    我正在尝试在将图像显示回用户之前调整图像大小 我收到的错误是 Error CGBitmapContextCreate invalid data bytes row 对于 8 个整数位 组件 3 个组件 kCGImageAlphaNoneSk
  • 如何将数据从 Flask 发送到 JavaScript?

    你好 我是新人 正在用 Flask 和 Javascript 构建一个应用程序 我在从 Flask do JavaScript 发送数据时遇到问题 我在routes py中有代码 app route mapaa methods GET PO
  • 导入的node_modules css在webpack中不起作用

    我的一个组件中有一个外部 css 导入 import rc slider assets index css 然而 当使用 webpack 构建时 css 没有被注册 我尝试添加以波浪号为前缀的导入 import rc slider asse
  • 如何在同一个 global.asax 中托管 WCF REST 服务和 WCF 数据服务

    我有一个 WCF REST Web 服务 通过 global asax 中的服务路由托管 如下所示 protected override void RegisterRoutes System Web Routing RouteCollect
  • 强制 fputcsv 对 *所有* 字段使用封装

    当我使用fputcsv http php net fputcsv要向打开的文件句柄写入一行 PHP 会向它认为需要的任何列添加一个封闭字符 但会保留其他列而不包含封闭字符 例如 您最终可能会得到这样的行 11 Bob Jenkins 200
  • 为什么 Jenkins 在使用 MSBuild 时忽略 %PATH% 变量?

    我正在尝试使用 Jenkins 编译用 Delphi 创建的 MSBuild 项目 我已将 MSBuild 插件安装到 Jenkins 中并进行配置 我正在为我的构建作业选择特定配置 我已经在 J enkins 中设置了 Delphi 编译
  • MongoDB 架构设计 - 帖子投票

    假设我有一个网站 里面有很多文章 人们可以对他们喜欢的文章进行投票 我希望能够查询得到在一定时间内 最后一小时 最后一天 上周 按票数排序的得票最多的文章 与往常一样 MongoDB 有几种不同的方法来实现这一点 但我不确定哪一种是正确的
  • 如何更新一个Javascript对象数组而不更新另一个[重复]

    这个问题在这里已经有答案了 我创建了一个包含一些值的对象数组 然后我创建了另一个对象数组并用第一个对象数组对其进行初始化 然后我在第二个数组中推送一个值 控制台记录了两个数组 两个数组具有相同的值 为什么会发生这种情况 我们怎样才能阻止这种