How to create a function and pass in variable length argument list?
We can create a function p
in the following code:
var p = function() { };
if (typeof(console) != 'undefined' && console.log) {
p = function() { console.log(arguments); };
}
but the arguments are passed like an array to console.log
, instead of passed one by one as in
console.log(arguments[0], arguments[1], arguments[2], ...
Is there a way to expand the arguments and pass to console.log like the way above?
Note that if the original code were
var p = function() { };
if (typeof(console) != 'undefined' && console.log) {
p = console.log;
}
then it works well on Firefox and IE 8 but not on Chrom开发者_如何学Ce.
You can use Function.apply():
console.log.apply(console, arguments);
精彩评论