और ++i
के अलावा जावास्क्रिप्ट में for
लूप बढ़ाने के अन्य तरीके हैं? उदाहरण के लिए, मैं एक के बजाय 3 से बढ़ाना चाहता हूं।एक से अधिक द्वारा लूप वृद्धि/कमी के लिए एक कर सकते हैं?
for (var i = 0; i < myVar.length; i+3) {
//every three
}
और ++i
के अलावा जावास्क्रिप्ट में for
लूप बढ़ाने के अन्य तरीके हैं? उदाहरण के लिए, मैं एक के बजाय 3 से बढ़ाना चाहता हूं।एक से अधिक द्वारा लूप वृद्धि/कमी के लिए एक कर सकते हैं?
for (var i = 0; i < myVar.length; i+3) {
//every three
}
उपयोग +=
assignment operator:
for (var i = 0; i < myVar.length; i += 3) {
तकनीकी तौर पर, आप किसी भी अभिव्यक्ति आप पाश के लिए के अंतिम अभिव्यक्ति में करना चाहते हैं जगह कर सकते हैं, लेकिन यह आम तौर पर काउंटर चर अद्यतन करने के लिए प्रयोग किया जाता है।
लूप के प्रत्येक चरण, check out the MDN article के बारे में अधिक जानकारी के लिए।
विवरण के लिए धन्यवाद - मुझे पूरा यकीन था कि तीसरे स्लॉट में और अधिक उन्नत अभिव्यक्तियों को रखने का एक तरीका था - मैं बस भूल गया था कि इसे चर परिभाषित करने की आवश्यकता है, इसलिए स्पष्ट रूप से 'i + 3' काम नहीं करता है। – brentonstrine
@ ब्रेंटनस्ट्रिन: कोई समस्या नहीं, खुशी है कि मैं –
for (var i = 0; i < 10; i=i+2) {
// code here
}
या '(var i = 0; i <10; i + = 2)' में मदद कर सकता हूं, क्योंकि 'i = i + 2'' i + = 2' के बराबर है – arximughal
एक for
पाश:
for(INIT; TEST; ADVANCE) {
BODY
}
मतलब निम्नलिखित:
INIT;
while (true) {
if (!TEST)
break;
BODY;
ADVANCE;
}
आप के लिए INIT
, TEST
, ADVANCE
, और BODY
लगभग किसी भी अभिव्यक्ति लिख सकते हैं।
ध्यान दें कि ++
ऑपरेटरों और वेरिएंट दुष्प्रभाव के साथ ऑपरेटरों (एक अगर तुम उन्हें i+=1
की तरह उपयोग नहीं कर रहे और इस तरह से बचने की कोशिश करनी चाहिए) कर रहे हैं:
++i
मतलब है i+=1; return i
i++
मतलब है oldI=i; i+=1; return oldI
उदाहरण:
> i=0
> [i++, i, ++i, i, i--, i, --i, i]
[0, 1, 2, 2, 2, 1, 0, 0]
एंड्रयू व्हिटकर का जवाब सच है, लेकिन आप किसी भी हिस्से के लिए किसी भी अभिव्यक्ति का उपयोग कर सकते हैं।
बस याद रखें कि दूसरी (मध्यम) अभिव्यक्ति का मूल्यांकन करना चाहिए ताकि इसकी तुलना एक बूलियन true
या false
से की जा सके।
जब मैं एक for
loop उपयोग करते हैं, मैं इसके बारे में
for (var i = 0; i < 10; ++i) {
/* expression */
}
के रूप में किया जा रहा है
var i = 0;
while(i < 10) {
/* expression */
++i;
}
आप निश्चित रूप से कर सकते हैं लगता है। अन्य ने सही ढंग से बताया है कि आपको i += 3
करने की आवश्यकता है। आप जो भी पोस्ट कर चुके हैं वह नहीं कर सकते हैं क्योंकि आप यहां जो भी कर रहे हैं वह i + 3
जोड़ रहा है लेकिन परिणाम को कभी भी i
पर असाइन नहीं कर रहा है। i++
i = i + 1
के लिए सिर्फ एक शॉर्टेंड है, इसी प्रकार i +=3
i = i + 3
के लिए एक शॉर्टेंड है।
for (var i = 0; i < myVar.length; i+=3) {
//every three
}
अतिरिक्त
Operator Example Same As
++ X ++ x = x + 1
-- X -- x = x - 1
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x/y
%= x %= y x = x % y
नहीं कर सकते तो आप सिर्फ तीसरा तर्क के लिए मैं स्थानापन्न = मैं + 3? या वह केवल जावा में है? – CptJesus
हां ठीक है 'i ++' और '++ i' लूप घोषणा में उपयोग किए जाने पर' i + = 1' की तरह हैं, इसलिए 'i + = 3' काम करेगा। – elclanrs
ए 'फॉर लूप कुछ भी नहीं बढ़ाता है। आपका कोड 'के लिए' कथन में उपयोग किया जाता है। यह पूरी तरह से आप पर निर्भर करता है कि/i/कहां/जब आप उस मामले के लिए 'i' या किसी अन्य चर को संशोधित करना चाहते हैं। –