!!x
wymusza typ zmiennej x
na wartość logiczną, przy jednoczesnym zachowaniu jej prawdziwości lub jej braku - see this question - Mam pytanie dotyczące użycia tego w wyrażeniach warunkowych.Dlaczego warto korzystać !! wymusić na zmiennej wartość boolean do użycia w wyrażeniu warunkowym?
Kilka razy w kodzie JS widziałem !!
wykorzystywane do zmuszania do zmiennej typu Boolean w stanie if
jak tak
if(!!x) {
x.doStuff();
}
Jeżeli chodzi o to, aby sprawdzić, czy x
jest zdefiniowane przed wywołaniem metody na to.
Ale w moim kodzie zawsze tylko używane
if(x) {
x.doStuff();
}
na założeniu, że jeśli x
jest zdefiniowany warunek minie, a jeśli x
jest niezdefiniowany, to nie minie.
Moje pytanie brzmi: Jaki jest sens wymuszenia na x
na wartość logiczną przy użyciu !!
w tym scenariuszu? Co robi this code zrobić, że nie ma tego ?
Jestem zakładając inni programiści nie tylko go używać, ponieważ wygląda cool, więc albo to albo jeden z moich założeń jest źle :-)
Nie, podłączyłem to pytanie i rozumiem odpowiedź, pytam, jaki jest sens w wymuszaniu tego typu na boolean w tym scenariuszu - proszę przeczytać pytanie przed oznaczeniem jako duplikat! – davnicwil
Odpowiedź brzmi, że nie ma sensu robić tego. To zupełnie tak samo, jakbyś przestał "!!". – user2736012
Rzeczywiście. Ludzie robią różnego rodzaju zabobonne rzeczy podczas nauki programowania. –