jQuery data()vs Objects(性能)

时间:2011-02-10 05:52:28

标签: javascript jquery performance

我想知道哪种方式使用jQuery数据绑定对象数据或使用这种对象更有效。我正在尝试为我的应用程序创建某种模型。这是目标代码

var PersonData = function () {
    var that = {},
        _name = 0,
        _age = 0.0,
        _domId = false;

    that.data = initData();

    //This is for initing data from options
    function initOptions () {
        return {
            name: _name,
            age: _age,
            domId: _domId
        }
    }

    that.setName = function (name) {
        that.data.name = name;
    }

    that.getName = function () {
        that.data.name;
    }

    // I forgot to add dom id, now there is id for binding
    that.setDomElementId = function (id) {
        that.data.domId = id;
    }

    //Add getters and setter

    return that;
}

感谢您的意见

顺便说一下,有很好的插件可以在textmate中为javascript生成getter和setter

1 个答案:

答案 0 :(得分:5)

jQuery的.data()用于将数据附加到DOM元素。如果您没有触摸DOM,请不要触摸.data()

另外,我不认为你想要的那种封装在JavaScript中是值得的(除非你需要它来检测数据读/写)。 特别是如果您关注性能,直接访问对象的属性是一个更好的选择。 JavaScript是一种动态语言,包含它:)