मुझे आश्चर्य हो रहा है कि किसी दिए गए शर्त से मेल खाने वाले JS सरणी के पहले तत्व को खोजने के लिए एक ज्ञात, अंतर्निहित / सुरुचिपूर्ण तरीका है। AC # समतुल्य होगा List.Find ।
अब तक मैं इस तरह से दो-फंक्शन कॉम्बो का उपयोग कर रहा हूं:
// Returns the first element of an array that satisfies given predicate
Array.prototype.findFirst = function (predicateCallback) {
if (typeof predicateCallback !== 'function') {
return undefined;
}
for (var i = 0; i < arr.length; i++) {
if (i in this && predicateCallback(this[i])) return this[i];
}
return undefined;
};
// Check if element is not undefined && not null
isNotNullNorUndefined = function (o) {
return (typeof (o) !== 'undefined' && o !== null);
};
और फिर मैं उपयोग कर सकता हूं:
var result = someArray.findFirst(isNotNullNorUndefined);
लेकिन चूंकि ECMAScript में बहुत सारे फंक्शनल-स्टाइल ऐरे मेथड हैं , शायद वहाँ पहले से ही ऐसा कुछ है? मुझे लगता है कि बहुत से लोगों को हर समय इस तरह से सामान को लागू करना पड़ता है ...
return (typeof (o) !== 'undefined' && o !== null);नीचे return o != null;। वे बिल्कुल समकक्ष हैं।