Javascript对象文字将属性传递给jquery插件选项

时间:2014-08-28 12:00:15

标签: javascript jquery object-literal

这是困扰我一段时间的问题之一,但我总是只是在没有真正找到合适的解决方案的情况下解决这个问题......如果之前已经回答但是我找不到答案,请道歉。如果可能的话,我想避免重构对象文字模式。

在下面的示例中,我无法访问NS.something,我不知道为什么......

var NS = {
    something : 'abc',

    init : function(){
        NS.doSomething();
    },

    doSomething : function(){
        $('.elements').jqueryPlugin({
            pluginParameters: {
                NS.something : 'xyz';
            }
        })
    }
};

NS.init();

1 个答案:

答案 0 :(得分:2)

您无法使用变量键定义对象文字,您必须在定义后使用[]表示法对其进行分配。

doSomething : function(){
    var pluginParameters = {};
    pluginParameters[NS.property] = 'xyz';
    $('.elements').jqueryPlugin({
        pluginParameters: pluginParameters
    })
}