为什么Javascript中的void需要参数?

Ult*_*ent 10 javascript void

根据我的理解,voidJavascript中的关键字是某种函数,它接受一个参数并始终返回undefined值.出于某种原因,你需要传递一个参数; 没有一个它就行不通.

它有什么理由需要这个论点吗?

有什么意义?为什么没有争论就行不通.我见过的唯一用途就是产生一个undefined结果.它还有其他用途吗?

如果没有那么似乎表达式的要求将是毫无意义的.

the*_*eye 8

根据此页面,https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void void是一个运算符undefined,在评估传递给它的表达式后,它只返回.操作员需要操作数才能操作.这就是传递参数的原因.

console.log(void true);
console.log(void 0);
console.log(void "Welcome");
console.log(void(true));
console.log(void(0));
console.log(void("Welcome"));
Run Code Online (Sandbox Code Playgroud)

所有这些陈述都会打印出来 undefined

var a = 1, b = 2;
void(a = a + b)
console.log(a);
Run Code Online (Sandbox Code Playgroud)

这将打印出来3.因此,很明显,它会评估我们传递给它的表达式.

编辑:我从这个答案中学习/sf/answers/521664671/

undefined只是一个可写的全球财产.例如,

console.log(undefined);
var undefined = 1;
console.log(undefined);
Run Code Online (Sandbox Code Playgroud)

它打印

undefined
1
Run Code Online (Sandbox Code Playgroud)

因此,如果您想绝对确保undefined使用它,您可以使用void运算符.由于它是一个运算符,因此无法在javascript中覆盖它.