मेरे पास टेक्स्ट के साथ 3 इनपुट फ़ील्ड हैं। मैं यह जांचने के लिए तार्किक ऑपरेटरों के साथ एक कथन का उपयोग करना चाहता हूं कि कोई इनपुट फ़ील्ड खाली है या नहीं, लेकिन मैं 3 चर के लिए या (||) का उपयोग नहीं कर सकता।

तार्किक ऑपरेटरों का उपयोग करने का सही तरीका क्या है?

let name = $("#name").val();
let email = $("#email).val();
let color = $("#color).val();

if(name == '' && ( email == '' || color == '') {
  console.log("please complete form");
 }
else {
//submit data
}

कोड वांछित के रूप में काम करता है अगर मैं नाम फ़ील्ड को खाली छोड़ देता हूं, लेकिन क्योंकि नाम सत्य है, अगर कथन इसे स्वीकार करता है। मैं इसे कैसे बना सकता हूं ताकि अगर कोई इनपुट फ़ील्ड खाली हो तो कथन जांचता है?

0
burnsie 30 अक्टूबर 2019, 03:25

3 जवाब

सबसे बढ़िया उत्तर

प्रत्येक के लिए || का प्रयोग करें:

if(name === '' || email === '' || color === '') {

आपको () समूहों की आवश्यकता नहीं है क्योंकि संचालन का क्रम कोई मायने नहीं रखता - आप केवल यह देखना चाहते हैं कि कोई भी परीक्षण सफल होता है या नहीं।

ध्यान दें कि सख्त समानता तुलना (===) अमूर्त समानता तुलना (==) पर हमेशा बेहतर होती है।

क्योंकि .val() हमेशा एक स्ट्रिंग देता है, और आप खाली स्ट्रिंग के विरुद्ध जांचना चाहते हैं, आप केवल यह जांच सकते हैं कि मान सत्य है या नहीं, यदि आप चाहते हैं:

if(!name || !email || !color) {
2
CertainPerformance 30 अक्टूबर 2019, 00:37

आपके पास एक सिंटैक्स त्रुटि थी (if कथन में एक कोष्ठक भूल गए)।

let name = $("#name").val();
let email = $("#email).val();
let color = $("#color).val();

if(name == '' && ( email == '' || color == '')) {
  console.log("please complete form");
 }
else {
//submit data
}
0
Bobtroopo 30 अक्टूबर 2019, 00:57

एक खाली स्ट्रिंग को 'गलत' माना जाता है जिसका अर्थ है कि तार्किक ऑपरेटरों का उपयोग करते समय इसे false के रूप में व्याख्या किया जाता है। ! (नहीं) ऑपरेटर के साथ संयुक्त उस ज्ञान का उपयोग करके, हम यह कर सकते हैं:

if(!name || !email || !color) {
  console.log("please complete form");
}

सादे अंग्रेजी में उस स्थिति का अर्थ है "अगर नाम नहीं है या ईमेल नहीं है या रंग नहीं है"

0
jared 30 अक्टूबर 2019, 00:31