我不明白如何在不提供 arg 值的情况下调用这个接受 arg 的函数。我猜测,由于 PS5 库中的 loadStrings 方法将进行异步调用,因此存在返回数据或消息的假设,但我仍然希望在函数调用中提供 arg,因为函数定义需要一个。
试图在网上找到对此的解释,但目前找不到。
这就是使用和工作的方式。
function setup() {
loadStrings("lines.txt", doText);
}
function doText(data) {
for (var i=0; i<data.length; i++) {
text(data[i], 5, 20*i+20);
}
}
我认为要为 doText 调用提供一个参数,我必须将它包装在一个匿名函数中以防止通过在名称后添加开放括号然后在包装器内给它 arg 来防止立即执行.
function setup() {
loadStrings("lines.txt", function () {doText(data);});
}
function doText(data) {
for (var i=0; i<data.length; i++) {
text(data[i], 5, 20*i+20);
}
}
那么在没有提供实际 arg 值的第一个示例中,数据是如何神奇地传递的呢?
最佳答案
这里没有魔法。正如您在 docs 中看到的那样或在 code of p5.js 中查看 loadString 正在读取给定文本文件的行并将结果数组作为第一个参数传递给回调函数。
关于javascript - 为什么可以在不提供数据参数的情况下引用此函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54504564/