I\'ve used a preload() method:
preload(\'img-1\',\'img-2\',...,\'img-num\')
Which works fine. But now I wanted to place all that parameters
You can use preload.apply
(apply is available from the Function
object's, Function.prototype.apply), which can spread out an array of data as arguments, like this
preload.apply(this, myArray);
For example,
function printer(first, second, third) {
console.log(first, second, third);
}
printer(1, 2, 3);
# 1 2 3
printer([1, 2, 3]);
# [1, 2, 3] undefined undefined
printer.apply(this, [1, 2, 3]);
# 1 2 3
Since the number of arguments can vary, people normally use arguments special object.
You can get the list of arguments as an array, within the function, like this
function printer() {
console.log(Array.prototype.slice.call(arguments));
}
printer(1, 2, 3);
# [ 1, 2, 3 ]
printer([1, 2, 3]);
# [ [ 1, 2, 3 ] ]
printer.apply(this, [1, 2, 3]);
# [ 1, 2, 3 ]