तरीके करने के लिए बहुत सारी इस
// implicit cast
+true; // 1
+false; // 0
// bit shift by zero
true >>> 0; // 1, right zerofill
false >>> 0; // 0
true << 0; // 1, left
false << 0; // 0
// double bitwise NOT
~~true; // 1
~~false; // 0
// bitwise OR ZERO
true | 0; // 1
false | 0; // 0
// bitwise AND ONE
true & 1; // 1
false & 1; // 0
// bitwise XOR ZERO, you can negate with XOR ONE
true^0; // 1
false^0; // 0
// even PLUS ZERO
true + 0; // 1
false + 0; // 0
// and MULTIPLICATION by ONE
true * 1; // 1
false * 1; // 0
तुम भी 1
, true/1; // 1
द्वारा विभाजन का उपयोग कर सकते हैं, लेकिन मैं से बचने की सलाह देंगे जहां संभव हो विभाजन।
इसके अलावा, गैर-यूनरी ऑपरेटरों में से कई assignment version हैं, इसलिए यदि आपके पास एक चर है जिसे आप परिवर्तित करना चाहते हैं, तो आप इसे बहुत जल्दी कर सकते हैं।
आप this jsperf के साथ विभिन्न विधियों की तुलना देख सकते हैं।
स्रोत
2013-02-09 11:49:54
संभावना है कि आपको शायद ऐसा करने की आवश्यकता नहीं है। कोई भी अंकगणितीय ऑपरेशन वैसे भी आपके बूलियन को परिवर्तित करेगा: उदाहरण के लिए 'सत्य + सत्य + सत्य == 3' – Eric
कोई भी ऑपरेटर जो अपने ऑपरेटरों को संख्यात्मक मानों में परिवर्तित करता है। सभी ऑपरेटरों की सूची: http://es5.github.com/#x11-toc। –
@ फ़ेलिक्सक्लिंग क्या आप लिंक को ठीक कर सकते हैं? –