我正在使用 Google 的 Blockly 开展一个项目,但部分文档难以理解。有人可以帮我理解以下 for 循环 (xml = allXml[i]) 的结束条件吗?
var allXml = Blockly.Xml.workspaceToDom(workspace);
var allCode = [];
for (var i = 0, xml; xml = allXml[i]; i++) {
var headless = new Blockly.Workspace();
Blockly.Xml.domToWorkspace(headless, xml);
allCode.push(Blockly.JavaScript.workspaceToCode(headless));
headless.dispose();
}
我想当 allXml[i] 未定义时循环会退出,但是你怎么能像这样遍历一个 XML 对象呢?它似乎总是返回未定义并完全跳过循环。
谢谢你的帮助
大部分函数的定义可以在https://code.google.com/p/blockly/source/browse/trunk/core/xml.js?r=1614找到
我从中提取的文档页面是https://developers.google.com/blockly/custom-blocks/code-structure?hl=en