सी # में, हमारे पास Enumerable.First(predicate)
है। इस जावा स्क्रिप्ट कोड को देखते हुए:जावास्क्रिप्ट फ़िल्टर पहले LINQ के Enumberable के बराबर है। सबसे पहले (predicate)
function process() {
var firstMatch = ['a', 'b', 'c'].filter(function(e) {
return applyConditions(e);
}).shift();
if(!firstMatch) {
return;
}
// do something else
}
function applyConditions(element) {
var min = 97;
var max = 122;
var random = Math.floor(Math.random() * (max - min + 1) + min);
return element === String.fromCharCode(random);
}
forEach
के अलावा अन्य,, पाश का उपयोग कर कई या ऑपरेटर का उपयोग करके या परोक्ष some(predicate)
बुला, वहाँ firstMatch
पाने की एक समझदारी भरा तरीका है? अधिमानतः एक जावास्क्रिप्ट फ़ंक्शन (filterFirst(pedicate)
जैसे कुछ) जो पहले मैच पर शॉर्ट-सर्किट सी # के Enumerable.First()
कार्यान्वयन जैसा दिखता है?
FWIW, मैं node.js/io.js रनटाइम को लक्षित कर रहा हूं।
+1 हां '। ढूँढें (predicate)' ठीक है जो मैं node.js. में देख रहा हूँ यह अभी भी प्रयोगात्मक है और विनिर्देश स्थिति मसौदा है। –
यह निष्पक्ष होने के लिए _really_ प्रयोगात्मक नहीं है :) मसौदा बस गया है, वे अब अन्य सामानों के अर्थशास्त्र को समझ रहे हैं। –