setTimeout with arguments
javascript
Solution
You can pass it an anonymous function that invokes `makeTimeout` with the given arguments:
setTimeout(function () {
makeTimeout(sp.name);
}, 250);
There's also an alternative, using `bind`:
setTimeout(makeTimeout.bind(this, sp.name), 250);
This function, however, is an ECMAScript 5th Edition feature, not yet supported in all major browsers. For compatibility, you can include `bind`'s source, which is available at MDN, allowing you to use it in browsers that don't support it natively.
DEMO.
Problem
having a bit of a headache on trying to work this out. What I want to do is have a custom setTimeout with arguments with out having to create a function to pass it. Let me explain by code: Want to avoid: ``` function makeTimeout(serial){ serial.close(); } setTimeout(makeTimeout(sp.name), 250); ``` what I want to do is somehow just call a 1 liner by like: ``` setTimeout(function(arg1){ .... }(argument_value), 250); ``` Can this be done or can you only pass in a no argument function?