javascript - 从 javascript 对象中删除元素

标签 javascript javascript-objects

我需要保持一个对象的整体布局。我将它传递给一个方法并:

  1. 我需要从对象中删除一些东西,然后做一些事情,
  2. 一旦我回到我所在的主要功能
  3. 我需要对象保持原状。

它现在的设置方式是将其从主对象以及底部方法中的对象中删除。代码参见 JSFiddle http://jsfiddle.net/rwux4rta/要从运行中获取结果,请查看控制台

请帮助!

$( document ).ready(function() {
    var pList = new Object();
    pList["test"] = "test"; //this is being deleted from BOTH instances of the Obj
    pList["test1"] = "test1";
    pList["test2"] = "test2";
    pList["test3"] = "test3";
    pList["test4"] = "test4";

    displayData(pList);

    console.log(pList);
});

function displayData(badData){
    badData.test.removeData();

    console.log(badData);
}

最佳答案

尝试

 $(document).ready(function() {
    var pList = new Object();
    pList["test"] = "test"; //this is being deleted from BOTH instances of the Obj
    pList["test1"] = "test1";
    pList["test2"] = "test2";
    pList["test3"] = "test3";
    pList["test4"] = "test4";
    // extend `pList` to `_pList` object
    var _pList = $.extend({}, pList);
    displayData(_pList);

    console.log(pList, "original");
});

function displayData(badData){
    delete badData.test;

    console.log(badData, "extended");
}

jsfiddle http://jsfiddle.net/guest271314/rwux4rta/6/

关于javascript - 从 javascript 对象中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26006385/

相关文章:

javascript - jQuery 便利方法如何在我的 DOM 元素中结束?

javascript - 从<img>标签自动生成<a>标签

javascript - 如何从JavaScript中的字符串更改单个字符

javascript - 简单的 jQuery Accordion ,可以跟踪高度变化来为旁边的其他对象设置动画

javascript - 在 Javascript 中对非数字字符串使用比较 (< >) 运算符

javascript - 添加自定义标题以提交表单

javascript - 在 Marionette 中使用变量作为区域名称

javascript - 如何将表达式仅应用于数字而不是字符串

javascript - 使用 javascript asp.net 在 gridview 的同一行中选中复选框时如何验证 gridview 中的文本框

javascript - 如何使用 Angular 将新对象添加到现有动态响应