如何存储对象数组?

2024-01-04

我有一个对象image我可以做类似的事情image.top它会返回一个值,或者我可以这样做image.myPoints[0].left它会返回一个值。我基本上有一个为我存储值的图像对象。我希望能够放置多个image数组中的对象,所以我可以做这样的事情:

$("#toPinpoint").mapImage({
                useAjax: false,
                pinpoints: [ { "top": 50,
                           "left": 280,
                           "width": 200,
                           "height": 200},
                         { "top": 0,
                           "left": 0,
                           "width": 300,
                           "height": 74 } ] 
            });

我使用这个函数来创建对象,将精确点添加到对象上。当调用 mapImage 函数时,会发生以下情况:

    $.fn.mapImage = function(options){



    //Set user input options and defaults
    var optionConfig = $.extend({}, $.fn.mapImage.defaults, options);

    image=this;
    this.image = this;

    // Assign defaults
    this.previewMode = optionConfig.previewMode;
    this.pinpoints = optionConfig.pinpoints;
    image.pinpoints = optionConfig.pinpoints;
    image.pinpointCount = 0;
    image.selected = 0;
    ...}

这设置了图像属性,现在我想用我的应用程序修改属性,然后保存这些image对象放入数组中。

我的问题是数组正在加载图像对象,但它似乎用我刚刚推入的对象填充了整个数组,因此它不会保存我的旧图像对象。例如,如果我这样做myArray[0].myPoints[0].left,假设它返回 30,然后我推送另一个 myPoints[0].left 等于 20 的图像对象,数组中的第一个图像对象变成 20,而不是将其保存为 30。如果有一个好方法解决这个问题将不胜感激。谢谢你!


Using array.push(x)应该添加x到最后array。但是,它不会创建副本x,所以如果您随后更改x and push()再说一次,你的数组将包含两个实例x具有更新的属性 - 我怀疑这就是您所看到的。 (也就是说,您可能正在更改top你的财产image and push()再次使用它,而不是创建一个全新的image to push()).

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

如何存储对象数组? 的相关文章

  • Meteor:应用程序无法在 0.9.1.1 版本上运行

    出现类似错误 Error TypeError undefined is not a function evaluating Template create anonymous function iron dynamic template j
  • 使用 Angular 下载具有动态 src 的脚本

    Angular 提供了通过动态名称动态加载模板的方法ng include 该部分中的内联 JS 和 CSS 可以正常加载 但没有一个好的方法来下载带有动态 url 的脚本 我们需要下载脚本 相对于调用它们的 html 部分的路径 即我们有一
  • 可以使用 jQuery 或 Javascript 将图片的特定部分用作链接吗?

    我有这个想法 将图片 而不是文本 的各个部分链接到不同的页面或网站 并且我想在不实际创建不同的照片并将它们彼此靠近的情况下完成 这样看起来就像是一张完整的图片 这里有人知道如何使用 JavaScript 的变体 例如 jQuery 或纯 J
  • 除了更改标题之外,如何在 Firefox 中强制另存为对话框?

    有没有办法在 ff 中强制打开 www example com example pdf 的另存为对话框 我无法更改标题 如果您可以将文件以 Base64 格式输出到客户端 则可以使用 data uri 进行下载 location href
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 如何将 Google Charts 与 Vue.js 库一起使用?

    我正在尝试使用 Vue js 库使用 Google Charts 制作图表 但我不知道如何添加到 div 这是我尝试做的 这是如何使用普通 javascript 添加图表 这是文档的代码示例 https developers google
  • Jquery/Javascript 上传和下载文件,无需后端

    是否可以在没有后端服务器的情况下在 JavaScript 函数中下载和上传文件 我需要导出和导入由 JavaScript 函数生成的 XML 我想创建按钮 保存 xml 来保存文件 但我不知道是否可行 另一方面 我希望将 XML 文件直接上
  • 使用 KnockoutJs 映射插件进行递归模板化

    我正在尝试使用以下方法在树上进行递归模板化ko映射 插入 http knockoutjs com documentation plugins mapping html 但我无法渲染它 除非我定义separate每个级别的模板 在以下情况下
  • MVC 在布局代码之前执行视图代码并破坏我的脚本顺序

    我正在尝试将所有 javascript 包含内容移至页面底部 我正在将 MVC 与 Razor 一起使用 我编写了一个辅助方法来注册脚本 它按注册顺序保留脚本 并排除重复的内容 Html RegisterScript scripts som
  • 为 illustrator 导出脚本以保存为 web jpg

    任何人都可以帮我为 illustrator CC2017 编写一个脚本 将文件以 JPG 格式导出到网络 旧版 然后保存文件并关闭 我有 700 个文件 每个文件有 2 个画板 单击 文件 gt 导出 gt 另存为 Web 旧版 然后右键文
  • 为什么在 Internet Explorer 中访问 localStorage 对象会引发错误?

    我正在解决一个客户端问题 Modernizr 意外地没有检测到对localStorageInternet Explorer 9 中的对象 我的页面正确使用 HTML 5 文档类型 并且开发人员工具报告该页面具有 IE9 的浏览器模式和 IE
  • 我可以使用 jQuery 打开下拉列表吗

    对于 HTML 中的下拉列表
  • 模块构建失败(来自 ./node_modules/babel-loader/lib/index.js)Vue Js

    我从 GitHub 下载了一个我和我的朋友正在开发的项目 但是当我尝试运行时 npm run serve 我收到这个错误 src main js 中的错误 Module build failed from node modules babe
  • Javascript转换时区问题

    我在转换当前时区的日期时间时遇到问题 我从服务器收到此日期字符串 格式为 2015 10 09T08 00 00 这是中部时间 但是当我使用 GMT 5 中的 new Date strDate 转换此日期时间时 它返回给我的信息如下 这是不
  • 条件在反应本机生产中失败,但在开发中有效

    我创建了一个反应本机应用程序 我需要通过它进行比较 如果属实 就会执行死刑 问题是 该条件适用于 React Native 开发模式 而不适用于 React Native 生产版本 我使用 firebase 作为数据库 也使用 redux
  • Javascript 纪元时间(以天为单位)

    我需要以天为单位的纪元时间 迄今为止 我已经看到过有关如何翻译它的帖子 但几天后就没有了 我对纪元时间很不好 我怎么能得到这个 我需要以天为单位的纪元时间 我将解释为您想要自纪元以来的天数 纪元本身是第 0 天 或第 1 天的开始 无论您如
  • 如何更改此 jquery 插件的时区/时间戳?

    我正在使用这个名为 timeago 的插件 在这里找到 timeago yarp com 它工作得很好 只是它在似乎不同的时区运行 我住在美国东部 费城时区 当我将准确的 EST 时间放入 timeago 插件时 比如 2011 05 28
  • 如何在jquery中以相反的顺序迭代元素? [复制]

    这个问题在这里已经有答案了 我是jquery的新手 我想知道如何使用each 在jquery中以相反的顺序迭代表单元素 任何帮助 将不胜感激 尝试这个 input get reverse each function
  • 在 React.js 中编辑丰富的数据结构

    我正在尝试为数据结构创建一个简单的基于网格的编辑器 但我在使用 React js 时遇到了一些概念问题 他们的文档对此没有太大帮助 所以我希望这里有人可以提供帮助 首先 将状态从外部组件传输到内部组件的正确方法是什么 是否有可能将内部组件中
  • Spring Rest 和 Jsonp

    我正在尝试让我的 Spring Rest 控制器返回jsonp但我没有快乐 如果我想返回 json 但我有返回的要求 完全相同的代码可以正常工作jsonp我添加了一个转换器 我在网上找到了用于执行 jsonp 转换的源代码 我正在使用 Sp

随机推荐

  • xUnit 与 Jenkins:如何在构建控制台输出中显示颜色?

    我成功设置了 CasperJS 测试套件 并通过这种方式导出到 xUnit XML 文件 casperjs test googletesting js xunit log xml 我成功地通过 Jenkins 自动化了这些测试 这要归功于x
  • 如何在Jenkinsfile中使用jenkins版本号插件?

    在安装了 版本号插件 的 Jenkinsfile 中尝试此步骤 stage Build echo Building TAG BUILD DATE FORMATTED yyyyMMdd develop BUILDS TODAY sh dock
  • shell 中的浮点舍入

    printf 0 2f n 41 495 41 49 printf 0 2f n 41 485 41 49 printf 0 2f n 41 475 41 47 printf 0 2f n 41 465 41 47 printf 0 2f
  • MPMoviePlayerController 关闭后顶部状态栏消失

    我的 iPhone 应用程序遇到一个有趣的小问题 我有一个带有表格的视图 每个单元格在单击时全屏播放视频 然后当您按完成时 视频停止并返回表格视图 唯一的问题是 当您在视频加载的前 2 或 3 秒内按 完成 时 当视图返回到表格视图时 屏幕
  • Python 中的子进程 Popen 和 PIPE

    以下代码打印一个空行作为输出 该输出为 false 问题不在于权限 因为我使用 pdf 文件的 777 权限测试了该命令 如何修复该命令以提供正确的输出 import subprocess from subprocess import PI
  • 如何为所有子域设置 Git 配置选项?

    与您可以设置的方式类似特定 URL 的 Git 配置选项 https stackoverflow com a 23807432 1233435 like git config http https code example com sslV
  • 如何禁用 Android Lollipop 波纹的 alpha 值?

    我有一个使用自定义颜色的波纹 然而 颜色永远不会完全不透明 根据来自的回答Ripple 的颜色应该是什么 colorPrimary 或 colorAccent 材料设计 https stackoverflow com questions 2
  • 使用 @Query 在 intellij 中进行语言注入

    使用intellij idea 2016 3 4 是否可以根据参数注入语言 考虑一下这个 Query nativeQuery true value select from Foo List
  • 无法添加文件 iOS 应用程序包

    我添加了一个带有扩展名的空文件 js在资源路径中 但未添加到应用程序的捆绑包中 我确信我已添加到应用程序目标 但有时它包含在捆绑包中 有时它不包含在捆绑包中 我通过以下代码获取文件的内容 NSString filePath NSBundle
  • 测试不同客户端和服务器版本的最佳 Git 策略

    我希望能够为 Java 客户端 服务器运行集成测试 使用嵌入式 jetty 此外 我希望能够在集成测试期间混合搭配不同的服务器和客户端源代码版本 我想知道实现此目的的最佳 git 或 maven 版本策略是什么 客户端和服务器使用相同的 g
  • 如何使用 C# 安全地将数据保存到现有文件?

    如何安全地将数据保存到 C 中已存在的文件中 我有一些数据被序列化到文件中 我很确定直接安全到文件不是一个好主意 因为如果出现任何问题 文件将被损坏 并且以前的版本将丢失 这就是我到目前为止一直在做的事情 string tempFile P
  • webpacker:安装后应用程序中的页面开始加载很长时间

    我正在将 webpacker 安装到我的 Rails 应用程序中 安装后 我注意到应用程序中的页面开始加载很长时间 会发生什么情况 从日志 Completed 200 OK in 90075ms Views 90072 2ms Active
  • 为什么服务器和小型/大型机以及混合核心需要不同的 CPU 架构? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在从数据库获取设置的函数上,我遇到了错误[重复]

    这个问题在这里已经有答案了 我正忙于从数据库获取设置的函数 突然 我遇到了这个错误 Fatal error Call to a member function bind param on boolean in C xampp2 htdocs
  • 如何使用 css 禁用图像的颜色?

    这是一个小问题 如果您访问 www thumbtack com jobs 然后转到他们的赞助商 您可以看到 一开始您看不到赞助商名称中的颜色 但是当您将鼠标悬停在它们上方时 您可以看到颜色出现 有人可以告诉我该怎么做吗 我不太确定在谷歌上搜
  • 有没有工具可以将 CIL 编译为二进制文件?

    看了之前的帖子后 使使用 NET 语言编写的应用程序在旧机器上运行 https stackoverflow com questions 335450 making applications programmed in net languag
  • Firebase 云消息传递是免费的吗?

    我需要在我的应用程序中实现推送通知功能 探索一些选择 谷歌最近推荐了Firebase平台 但这并不是完全免费的服务 于是我又想到了使用GCM 谷歌将来会停止对 GCM 的支持吗 Firebase 云消息传递 https firebase g
  • java gson在序列化时替换密码值

    如何替换密码字段的值XXX使用 Gson 反序列化对象时 我找到了这个帖子 Gson 如何在没有注释的情况下从序列化中排除特定字段 https stackoverflow com questions 4802887 gson how to
  • 无法发送多种类型“|”通过 iOS 访问 Google Places API

    不知何故 我无法通过 iOS 将以下字符串发送到 Google Places API NSString string https maps googleapis com maps api place nearbysearch json lo
  • 如何存储对象数组?

    我有一个对象image我可以做类似的事情image top它会返回一个值 或者我可以这样做image myPoints 0 left它会返回一个值 我基本上有一个为我存储值的图像对象 我希望能够放置多个image数组中的对象 所以我可以做这