gpt4 book ai didi

flash - 将 ...rest 传递给 NetConnection 调用

转载 作者:行者123 更新时间:2023-12-02 00:39:47 25 4
gpt4 key购买 nike

我想在 netconnection 调用中传递 rest,如下所示:

public function requestData(service : String, ...params) : void
{
nc.call(service, params);
}

这不起作用,因为调用期望每个参数用逗号分隔,例如:

nc.call(service, params[0], params[1], params[2]);

我已经阅读了一些关于申请的帖子,但我找不到针对这个特定案例的解决方案。

最佳答案

试试这个:

public function requestData(service : String, ...params) : void
{
var applyArgs:Array = params && params.length > 0
? [service].concat(params)
: [service];
nc.call.apply(nc,applyArgs);
}

我还没有测试这段代码,但是因为 Function::apply 接受的第二个参数是一个数组,它将被转换成一个参数列表,这应该可以工作(除非我犯了一些愚蠢的错误...... SO 中还没有编译器帮助!)。

基本上,applyArgs 数组的第一个位置总是包含service。如果有更多额外的参数,它们将被连接到这个数组:结果就是你传递给 apply 的内容。

关于flash - 将 ...rest 传递给 NetConnection 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2999888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com