Javascript: неопределен като функционален параметър - javascript, параметри, undefined

По този страница, той показва някои примерни кодове, съдържащи следния ред:

var Subject = ( function( window, undefined ) {

Какво е undefined като функционален параметър?

Отговори:

5 за отговор № 1

Това се използва, за да се предотврати превишаването на стойността на undefined в несправедлив режим.

В несправедлив режим стойността на undefined може да бъде преодолян, като му се даде друга стойност.

undefined = true; // Or any other value

Така че, използвайки стойността на undefined няма да работи, както се очакваше.

В стриктен режим, undefined е само за четене и присвояването й на стойност ще хвърли грешка.

В кода стойността до последния параметър не е приета, така че ще бъде приета по подразбиране като undefined,

var Subject = ( function( window, undefined ) {

}(window)); // <-- No parameter is passed for the last value

2 за отговор № 2

Това се прави, за да се увери, че недефинираната винаги е неопределена. В JavaScript, тъй като недефинираната не е запазена дума, а обикновена променлива, това би било позволено например:

 undefined = 2; // Assign a different value to undefined
if (undefined == 2)  // Now this statement would be true

Така че във вашия случай

var Subject = ( function( window, undefined ) {

Те преминават през прозореца и го използват, но след това не прехвърлят втора стойност към неопределения параметър, като по този начин недефинираните ще бъдат неопределени.


0 за отговор № 3

Защото успяхте да предефинирате стойността на undefined, но вече не. Недефиниран е специален тип, който има няколко случая на използване. Ако беше предефинирано true, кодът като този ще се счупи:

if(my_var === undefined) {
dont_load_missiles());
} else {
load_missiles();
}

Свързани въпроси
Най - известен