इन्क्रीमेंट और डिक्रीमेंट ऑपरेटरों से बचना चाहिए क्योंकि इससे अप्रत्याशित परिणाम हो सकते हैं। यहां कुछ शर्तें दी गई हैं:
असाइनमेंट स्टेटमेंट में, यह प्रतिकूल परिणाम दे सकता है:
उदाहरण
लाइव डेमो
<html>
<body>
<script>
var a = 5;
var b = ++a; var c = a++;
var d = ++c;
document.write(a);
document.write("\r"+b);
document.write("\r"+c);
document.write("\r"+d);
</script>
</body>
</html> आउटपुट
ऑपरेटर और वेरिएबल के बीच व्हाइटस्पेस भी अप्रत्याशित परिणाम दे सकता है:
a = b = c = 1; ++a ; b -- ; c;