前几天,我在JavaScript中将此函数编写为jQuery插件中对象的简单DTO。我假设如果我在函数末尾写了一个通用return gridColumns
行,那么在我的for
循环完成填充之前,可能会返回数组。所以我最后写了while (true)
这句话,以为我很聪明。
function getGridColumns() {
var gridColumns = [];
var records = $("#jqxGrid").jqxGrid("columns").records;
for (var i = 0; i < (records.length); i++) {
var obj = {
datafield: records[i].datafield,
width: records[i].width,
cellsalign: records[i].cellsalign,
hidden: records[i].hidden
}
gridColumns.push(obj);
}
while (true) {
if (gridColumns.length == records.length {
return gridColumns;
}
}
};
我的一个伙伴看着我的小“黑客”并说完全没必要,我做了一些测试,并确定他是对的。
所以,这就是我在的地方。 如何是JavaScript异步,它是怎么回事?任何人都可以帮助我理解这个范例,以便我可以编写更好的JavaScript吗?
答案 0 :(得分:2)
生成执行新“线程”的最常见机制因此可以说在javascript中引入异步情况是AJAX调用回调(除非调用是专门同步的)和setInterval()
和{{1}调用。正如Pointy指出的那样,不仅如此。