我正在查看一个开源 javascript 应用程序,特别是 firefox 的扩展。
我在多个地方看到了这种语法,我不知道它是什么意思,如果有人能对此有所了解的话。
比如..
return (...args)
或者...
console.info(message, ...args.slice(1));
知道这个“...”是做什么的吗?是把第三个参数放进去还是什么?第三个论点回来了?在无法理解的情况下很难尝试和调试它。
最佳答案
它将一个数组 (args) 解压缩到一个正式的参数列表中。除其他外,这允许将剩余参数的成员作为一组形式参数传递给另一个函数。
这是一个例子:
var stats = function(...numbers) {
for (var i=0, total = 0, len=numbers.length; i<len; i++) {
total += numbers[i];
}
return {
average: total / arguments.length,
max: Math.max(numbers); //spread array into formal params
}
}
stats(5, 6, 8, 5); //{average: 6, max: 8}
希望这能帮助您理解“...”!
关于Javascript - '...' 含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28421404/