javascript - jquery .data() 方法

标签 javascript jquery object

当我在 jQuery 的数据中存储像 {a: 1, b: 2 } 这样的对象时,它是复制该对象还是保存对它的引用?

我有一个巨大的对象,我希望不同的元素存储从不同点到同一个对象的不同引用,我不希望它被复制。

喜欢

var obj = { 
    a: {
        one: 1, two: 2
    },
    b: {
        apple: 'yummy', banana: 'ehh'
    }
    c: {
        d: {
            'jQuery': jQuery
        }
        e: ['You get the point']
    }
};

$('div').data('info', obj.b);
$('#JQ').data('jq_reference', obj.c.d.jQuery);

最佳答案

根据 my jsfiddle test ,它存储一个引用。

如果我这样做:

$('div').data('info', obj.b);
obj.b.apple = 'bleuch';
alert($('div').data('info').apple);

它发出“bleuch”警报,表明正在存储对原始对象的引用。

关于javascript - jquery .data() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5694783/

相关文章:

javascript - 我可以使用 "load.js"库加载 CSS 吗?

javascript - 为什么 Redux 存储中的这个变量不在 React 页面的 `this.props` 中?

javascript - 单击外部背景 div 时如何退出弹出联系表单?

javascript - 将嵌套数组 -> 数组 -> 对象转换为数组 -> 对象 => 对象值 : object value

javascript - 在 AngularJS 中无需 keyup 或 keypressed 即可触发 ng-change 函数

javascript - jQuery.height() 设置的高度高于参数中指定的高度

c++ - 如何检查派生类对象是否已存储在 vector 中?

javascript - 如何使用 .forEach() 方法循环对象并将结果存储在新数组中

php - jQuery POST 表单数据行

javascript - 如何滚动到单击时移出屏幕的 div