खोजें कि क्या चर 2 से विभाज्य है


128

यदि कोई चर 2 से विभाज्य है तो मुझे कैसे पता चलेगा? इसके अलावा मुझे एक फ़ंक्शन करने की ज़रूरत है अगर यह है और यदि यह नहीं है तो एक अलग फ़ंक्शन करें।


6
@SilentGhost: क्या आजकल लोग वास्तव में jQuery का होमवर्क प्राप्त करते हैं?
एंडी ई

4
उस एंडी के बारे में नहीं जानते, लेकिन लोग निश्चित रूप से जानते हैं कि उनके टैग को कैसे गड़बड़ करना है।
साइलेंटगॉस्ट

2
@OP: jQuery सब कुछ का जवाब नहीं है जो आप संभवतः जावास्क्रिप्ट में करना चाहते हैं;)
माइक एटलस

8
@ माइक गलत! आपको उसके लिए jQuery के बेसिक अंकगणित प्लगइन का उपयोग करना चाहिए! जाने का रास्ता Thats ...: P (आइरन)
पाब्लो काबेरा

जवाबों:


312

मापांक का प्रयोग करें:

// Will evaluate to true if the variable is divisible by 2
variable % 2 === 0  

30
इसे प्यार करना! सरल, आसान, और आपने मुझे सवाल पूछने के लिए एक बेवकूफ की तरह महसूस नहीं किया ... जो (उन सभी के लिए जो पहले से नहीं जानते हैं) नए jQuery / जावास्क्रिप्ट डेवलपर्स के लिए एक बड़ी बात है।
दुखद माइक्रोवेव

6
@ साडिमम माइक्रोवेव: हम सभी कुछ बिंदु पर शुरुआती के रूप में बाहर शुरू करते हैं। वास्तविक समस्या वहाँ से बाहर जानकारीपूर्ण ट्यूटोरियल की कमी है। पूर्ण शुरुआती के लिए ट्यूटोरियल जावास्क्रिप्ट और jQuery के बीच अंतर को स्पष्ट करना चाहिए और वे सीधे jQuery के सामान में गोता लगाते हैं।
एंडी ई

3
पहला कोड जो मैंने कभी लिखा था, वह जावास्क्रिप्ट में था, और वह था "वेलकम" अलर्ट बॉक्स पॉपअप। वर्ष 1997 था और यह मेरे जियोसिटीज होमपेज के लिए था। हम निश्चित रूप से सभी कहीं न कहीं शुरू करते हैं (कुछ औपचारिक प्रशिक्षण भी मदद करता है, हालांकि)।
माइक एटलस

ऐसा नहीं होना चाहिए: चर% 2 == 0 यदि मैं गलत हूं तो मुझे शिक्षित करें।
सीन टैंक गार्वे

28

सच में, वहाँ कोई jQuery प्लगइन अजीब / भी जाँच के लिए है?

ठीक है, अब और नहीं - "Oven" को जारी करने के लिए MIT लाइसेंस के तहत एक jQuery प्लगइन जारी किया जाता है, अगर किसी दिए गए नंबर का ऑड / इवन है।

स्रोत कोड http://jsfiddle.net/7HQNG/ पर भी उपलब्ध है

टेस्ट-सूट http://jsfiddle.net/zeuRV/ पर उपलब्ध हैं

(function() {
    /*
     * isEven(n)
     * @args number n
     * @return boolean returns whether the given number is even
     */
    jQuery.isEven = function(number) {
        return number % 2 == 0;
    };

    /* isOdd(n)
     * @args number n
     * @return boolean returns whether the given number is odd
     */
    jQuery.isOdd = function(number) {
        return !jQuery.isEven(number);
    };
})();​

7
वाह। मजेदार, लेकिन आपको एहसास है कि कोई वास्तव में इसका इस्तेमाल करेगा?
टिम डाउन

7
@ नीचे नीचे: मुझे आश्चर्य है कि अगर कोई भी उस jQuery के बुनियादी अंकगणितीय प्लगइन का उपयोग करता है ? सूची में आगे, एक jQuery यादृच्छिक संख्या जनरेटर ;-)
एंडी ई

9
वहाँ इतना है कि jQuery कर सकते हैं, जैसे चर, कार्यों, आदि, जो अभी भी कच्चे जावास्क्रिप्ट के साथ किया जा रहा है । बस अविश्वसनीय ;-)
अनुराग

4
@Andy - उस लिंक पर ROFL और SO इमेज - doxdesk.com/img/updates/20091116-so-large.gif मुझे लगता है कि "jQuery का उपयोग करें" उत्तर अब जावास्क्रिप्ट में एक सर्वकालिक उच्च तक पहुँचने वाला है :)
अनुराग

आपके पास शब्द दस्तावेज़ है जो मुझे इसका उपयोग करने की व्याख्या करता है? @ अनुराग
टॉड

13

आपको jQuery की आवश्यकता नहीं है बस जावास्क्रिप्ट मोडुलो ऑपरेटर का उपयोग करें ।


5
doxdesk.com/img/updates/20091116-so-large.gif , आप में से उन लोगों के लिए जो यह नहीं समझते हैं कि @AlexCoplan किस बारे में बात कर रहा है
markasoftware

11

आप इस तरह मापांक ऑपरेटर का उपयोग कर सकते हैं, jQuery की कोई आवश्यकता नहीं है। बस alertsअपने कोड के साथ बदलें ।

var x = 2;
if (x % 2 == 0)
{
  alert('even');
}
else
{
  alert('odd')
}

11

आप इसे बेहतर तरीके से कर सकते हैं (मॉडुलो ऑपरेटर की तुलना में 50% तक तेज):

विषम: x & 1 भी:! (x & 1)

संदर्भ: उच्च प्रदर्शन जावास्क्रिप्ट, 8. -> बिटवाइज़ ऑपरेटर


यह एक महान, वास्तव में सबसे अच्छा जवाब है। हालाँकि, इसके लिए बिटवाइज ऑपरेटर्स के ज्ञान की आवश्यकता होती है ..
सीन टैंक गार्वे


4
var x = 2;
x % 2 ? oddFunction() : evenFunction();

मुझे लगता है कि यह कोड गलत / त्रुटिपूर्ण है। आप चर x (विशेष रूप से x हमेशा संख्या 2 के बराबर बनाते हुए) के लिए एक मूल्य घोषित कर रहे हैं .. पहली त्रुटि। फिर, आपकी अगली पंक्ति बस यह कहती है कि यदि चर x को 2 से विभाजित किया जा सकता है, तो विषम कार्य करें, अन्यथा / यदि नहीं, तो भी करें ... इस दृष्टिकोण के साथ समस्या यह है कि यह हमेशा ही उत्पादन करेगा - विषमता कभी नहीं - यह एक और समस्या / त्रुटि है। कृपया मुझे शिक्षित करें यदि मैं गलत हूं।
सीन टैंक गार्वे


2

उम्मीद है की यह मदद करेगा।

let number = 7;

if(number%2 == 0){      

  //do something;
  console.log('number is Even');  

}else{

  //do otherwise;
  console.log('number is Odd');

}

यहां एक संपूर्ण फ़ंक्शन है जो आपके इनपुट की समता को कंसोल में लॉग करेगा।

const checkNumber = (x) => {
  if(number%2 == 0){      

    //do something;
    console.log('number is Even');  

  }else{

    //do otherwise;
    console.log('number is Odd');

  }
}

1

कृपया अपने कंसोल में निम्नलिखित कोड लिखें:

var isEven = function(deep) {

  if (deep % 2 === 0) {
        return true;  
    }
    else {
        return false;    
    }
};
isEven(44);

कृपया ध्यान दें: यह सच है, अगर दर्ज संख्या भी अन्यथा झूठी है।


1
उत्तर के लिए धन्यवाद, लेकिन यह अनिवार्य रूप से स्वीकृत उत्तर के समान है, आपने इसे केवल एक फ़ंक्शन में लपेटा है। वैसे भी, योगदान के लिए धन्यवाद
दुखद माइक्रोवेव

1

मोडुलस का उपयोग करें, लेकिन .. उपरोक्त स्वीकृत उत्तर थोड़ा गलत है। मेरा मानना ​​है क्योंकि x जावास्क्रिप्ट में एक संख्या प्रकार है कि ऑपरेटर को एक ट्रिपल असाइनमेंट के बजाय एक डबल असाइनमेंट होना चाहिए, जैसे:

x % 2 == 0

अपने चर भी घोषित करने के लिए याद रखें, तो जाहिर है कि लाइन को स्टैंडअलोन नहीं लिखा जा सकता है। :-) आमतौर पर एक ifबयान के रूप में इस्तेमाल किया जाता है । उम्मीद है की यह मदद करेगा।


-2

सरणी = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

array.each {| x | x% 2 == 0} पर x डालता है

माणिक: डी

२ ४ ६ 4 १०


1
आप 4chan से घूमते हैं?
टॉड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.