javascript - 创建字典的简单算法

时间:2012-03-16 02:30:33

标签: javascript jquery django

我正在使用jQuery与Django来做表格的一些事情。我有以下javascript:

$("#pending_table").tablesorter({
    headers: {5 + {{somevariable}}: {sorter:false},6 + {{somevariable}}: {sorter:false}}
});

(我省略了一堆其他不相关的选项)

导致问题的部分是标题字典定义中的添加。查看生成的网页的来源,我可以看到{{somevariable}}正确转换为其值4,因此它不是与Django相关的问题。

总结:“5 + 4:值”不起作用,“9:值”确实有效。

我假设我在某种程度上弄错了javascript的语法。

帮助?

1 个答案:

答案 0 :(得分:3)

Javascript对象文字只允许文字作为键。换句话说,您不能将计算表达式作为键。例如,这是不允许的:

headers = {
  (1 + 2): 4
}

那就是说,你可以这样做来规避这种限制:

headers = {};
headers[1 + 2] = 4;

在您的情况下,您似乎想要执行以下操作:

var headers = {};
headers[5 + someVar] = {sorter: false};
headers[6 + someVar] = {sorter: false};
$("#pending_table").tablesorter({    
  headers: headers   
});