4 ms·
By the way, `typeof X === 'undefined'` doesn't need to be used for variable names that exist such as arguments, you can use X == undefined without opportunity f
by tshadwell 12y ago
By the way, `typeof X === 'undefined'` doesn't need to be used for variable names that exist such as arguments, you can use X == undefined without opportunity for failure.
- chmod775 12y agoThank you! I'll fix it asap.
- woogley 12y agoTechnically, all edge cases considered, `typeof` is the only fool-proof check, since you can't override the string constant `'undefined'` but the `undefined` identifier is fair game. Here is one such edge case: (function () { var undefined = true; return (function foo(x) { return x === undefined; }()); }()); // false Language pedantry aside, browsers these days will freeze `window.undefined` so you'd have to shoot yourself in your own scope ;)
- tshadwell 12y agoif you're that determined to shoot yourself in the foot you might as well rebind valueOf