Jeśli pójdziesz na stronie wyników Google i uruchomić rwt.toString()
, zobaczysz, że wywołanie powrót do tej funkcji jest następująca:Czy jest jakiś punkt używania "return! 0" w javascript?
return !0;
nie mogę wymyślić żadnego powodu, dlaczego nie zawsze będzie true
. Czy to jest tylko skrót dla true
, czy może dzieje się tutaj więcej?
jednak pobieranie 1 bajta zajmuje tylko 1, a powrót 1; zadziałałoby równie dobrze, nie? będąc niezerowym, a wszyscy wiemy, że nie testujesz prawdziwości, testujesz na nie fałsz. – stu
To jest interesujące. Czy większość implementacji javascript optymalizuje! 0 i! 1 do wartości true i false bez obliczania? – Kekoa
@stu 'return 1;' zwraca typ 'number'. Jeśli ktoś użyje wartości zwracanej przez operatorów '===' lub '! ==', uzyska oczekiwane wyniki z '! 0', ale nie z' 1'. – Paulpro