मैं एक समारोह है कि इस तरह काम करता है बनाना चाहते:जावास्क्रिप्ट एक मूल्य के लिए एक सरणी खोज और प्राप्त उसके प्रमुख
function arraySearch(array, valuetosearchfor)
{
// some code
}
अगर यह सरणी में मूल्य पाता है, यह कुंजी वापस आ जाएगी, यह जहां पाया महत्व। यदि एक से अधिक परिणाम (एक से अधिक कुंजी) हैं, या कोई परिणाम नहीं मिला (कुछ भी नहीं मिला), तो फ़ंक्शन FALSE लौटाएगा।
मैं इस कोड मिला:
function arraySearch(arr,val)
{
for (var i=0; i<arr.length; i++)
{
if (arr[i] == val)
{
return i;
}
else
{
return false;
}
}
}
और इस तरह इसका इस्तेमाल किया:
var resultofarraycheck = arraySearch(board, chosen);
if (resultofarraycheck === false)
{
document.getElementById(buttonid).value;
chosen = 0;
}
लेकिन यह काम करने के लिए प्रतीत नहीं होता। जब इसे कुछ मिलना चाहिए, तो यह कुंजी (i) के बजाय झूठा लौटाता है।
मैं इसे कैसे ठीक कर सकता हूं, या मैं गलत क्या कर रहा हूं?
धन्यवाद, और मुझे खेद है कि मेरी अंग्रेजी पर्याप्त स्पष्ट नहीं थी।
ले जाएँ 'वापसी FALSE' कर सकते हैं करने के लिए * के बाद *' for' पाश। (और कई समान परिणामों के साथ मामले को संभालने के बारे में सोचें।) – DCoder
[इकबाल डीजुलफ़्रफ़ का उत्तर] (http://stackoverflow.com/a/13109873/1233508) केवल एकमात्र ऐसा है जो वास्तव में डुप्लिकेट कुंजी के संबंध में आपकी आवश्यकता को पूरा करता है। – DCoder