这是使用jQuery从JSON数据填充表的有效方法还是有更好/更低成本的方法?最大行数约为100.我不想使用插件.
JS:
$.ajax({
url: 'public.json',
dataType: 'json',
success: function(data) {
var row = '<tr class="header">';
for (var i in data.headers) {
row += '<th style=""><a href="#" class="sort"><span>' + data.headers[i] + '</span></a></th>';
}
row += '</tr>'
$(row).appendTo('table.data');
row = '';
for (var i in data.rows) {
row += '<tr id="' + i + '">';
row += '<td>' + data.rows[i].date + '</td>';
row += '<td>' + data.rows[i].company + '</td>';
row += '<td>' + data.rows[i].location + '</td>';
...
row += '</tr>';
}
$(row).appendTo('table.data'); …
Run Code Online (Sandbox Code Playgroud) 考虑这两个块:
A座
obj = {
a: 1,
b: 2,
c: 3,
f: function() {
alert(this.a);
alert(this.b);
alert(this.c);
}
}
Run Code Online (Sandbox Code Playgroud)
B座
obj = {
a: 1,
b: 2,
c: 3,
f: function() {
var a = this.a;
var b = this.b;
var c = this.c;
alert(a);
alert(b);
alert(c);
}
}
Run Code Online (Sandbox Code Playgroud)
一种方式比另一种方式更正确/更有效吗?当然,这是一个简洁的例子 - 在我的代码中有更多变量,我想要做的是通过不为this.varName
每个时间在函数中键入来为当前函数的范围重新分配变量来节省时间.它有效,但它是否正确?
编辑:只是为了澄清,变量将在整个函数中广泛使用.普遍的共识似乎是,为此,通过地方范围进行重新分配是可行的方法.
这是我的设置:
表“文件”包含一个包含详细信息的文件列表;表“分数”跟踪每个文件的 1-5 分。我需要从“文件”表中获取条目,并且在每一行中我都需要该文件的所有信息以及平均分数。当我遍历行时,我可以对当前的 file_id 进行另一个查询,但显然这不是很优化。我尝试了类似下面的方法,但没有成功。
SELECT files.*, (SUM(scores.score)/(COUNT(scores.score))) AS total FROM files INNER JOIN scores ON files.id=scores.file_id;
请指出我正确的方向 - 谢谢!