Bir işlev ve dizim olduğunu varsayalım. Dizideki her girdiye işlevi uygulayarak diziyi değiştirmek istiyorum. Fonksiyon doğrudan değeri DEĞİŞTİRMEZ; yeni bir değer döndürür.Bir diziyi node.js veya JavaScript'te eşlemenin yolunu temizleyin
pseudo-code,
for (entry in array) {
entry = function(entry);
}
aklıma o bunu yapmak için birkaç yol vardır:
for (var i = 0; i < arr.length; i++) {
arr[i] = fn(i);
}
Ya da, node.js kullanıyorum beri ve alt çizgi yerleşik olması :
arr = _.map(arr, fn);
Ama bu ikisi biraz aksak görünüyor. Standart "for" bloğu aşırı derecede ayrıntılı geliyor ve _.map işlevi tüm diziyi yeniden atayarak verimsiz hissediyor.
Bunu nasıl yaparsınız?
Evet, ben bu :)
Bir performans sorunu olduğundan emin olunana kadar alt çizgi işlevini kullanın. Bu çok okunabilir ve temiz, bu yüzden aslında bir sorun değilse, "verimsizlik hissi" daha fazla acil konulara geçmenizi engellememelidir :) – PatrikAkerstrand
Tamamen doğru! Yine de merak ediyorum. – Eric