2011-06-29 7 views
8

मेरे पास सरणी var john = ['asas','gggg','ggg'];मैं जावास्क्रिप्ट में बाध्य होने से ArrayIndex को कैसे लॉग कर सकता हूं?

यदि मैं इंडेक्स 3 पर john एक्सेस करता हूं, यानी। john[3], यह विफल रहता है।

मैं एक संदेश या चेतावनी कैसे दिखा सकता हूं कि उस सूचकांक में कोई मूल्य नहीं है?

उत्तर

6
function checkIndex(arrayVal, index){ 
    if(arrayVal[index] == undefined){ 
     alert('index '+index+' is undefined!'); 
     return false; 
    } 
    return true; 
} 

//use it like so: 
if(checkIndex(john, 3)) {/*index exists and do something with it*/} 
else {/*index DOES NOT EXIST*/} 
+2

इस प्रकार कास्ट करने की कोशिश न करें! === के बजाय === का उपयोग करें! यह तेजी से भी होगा (नैनोसेकंड द्वारा, लेकिन हे! :) – japrescott

+0

"सीमाओं से बाहर ऐरे इंडेक्स" और "सरणी 'अनिर्धारित' तत्व 'को अलग-अलग संभाला जाना चाहिए। यहां देखें: http://stackoverflow.com/questions/6728424/array-out-of-bounds-comparison-with-undefined-or-length-check –

6
if (typeof yourArray[undefinedIndex] === "undefined") { 
    // It's undefined 
    console.log("Undefined index: " + undefinedIndex; 
} 
+2

उनके प्रश्न: ** मैं कैसे एक संदेश या चेतावनी प्रदर्शित कर सकते हैं कह सूचकांक पारित कर के लिए कोई मूल्य नहीं है कि वहाँ ** – ssapkota

+0

"सीमाओं से बाहर ऐरे इंडेक्स" और "सरणी है 'अपरिभाषित' तत्व" को अलग-अलग संभाला जाना चाहिए। यहां देखें: http://stackoverflow.com/questions/6728424/array-out-of-bounds-comparison-with-undefined-or-length-check –

0

सरणी 0 से आरंभ, इंडेक्स किए गए नहीं 1.

सरणी में 3 तत्वों रहे हैं; वे हैं:

john[0] // asas 
john[1] // gggg 
john[2] // ggg 
1

जावास्क्रिप्ट सरणियों 0. पर शुरू तो अपने सरणी सामग्री 0 शामिल हैं - 'asas', 1 - 'gggg', 2 ​​- 'ggg'।

2

जावास्क्रिप्ट पकड़ की कोशिश है

try 
    { 
    //your code 
    } 
catch(err) 
    { 
    //handle the error - err i think also has an exact message in it. 
alert("Error"); 
    } 
+0

या सरणी की लंबाई जांचें। –

+0

अगर (somearray.length <3) {फिर कुछ करें} –

+1

यह त्रुटि से बाहर सूचकांक पकड़ने के लिए एक क्रोधित समाधान है और बस इसे निगलें। इस तरह के प्रोग्रामिंग कीड़े की ओर जाता है। सरणी की लंबाई की जांच करना बेहतर है! – mortb

1
var john = ['asas','gggg','ggg']; 
var index=3; 
if (john[index] != undefined){ 
console.log(john[index]); 
} 
संबंधित मुद्दे

 संबंधित मुद्दे