If you don't know how many variables are in that array, how do you know how many placeholders to define in your string ?
I'd suggest you only use one placeholder and just .join()
the array, like
util.format('My name is %s', ['John', 'Smith'].join(' '));
Update
I guess I got you wrong there, you can make usage of JavaScripts Function.prototype.apply
to pass in arguments to a function from an Array source. This could look like
util.format.apply(util,['My name is %s %s','John', 'Smith']);
Of course you would need to .unshift()
your placeholder string into that array aswell beforehand.