void - przyjmuje jeden parametr i zawsze zwraca undefined. Ponieważ jest słowem zastrzeżonym w JS nie można go nadpisać w przeciwieństwie do undefined. W ECMAScript 5 zostało to zmienione i nie można już nadpisać undefined (nie jest wyrazem zastrzeżonym a właściwością non-configurable, non-writable, non-enumerable).
void 0 === void(0)
void 0 //undefined
var undefined = 'changed';
undefined //w ECMAScript 3 -> 'changed'