Сообщение от moka
|
я вот не понимаю тебя, yield return в C# и yield в ECMA6 делает одно и тоже
а именно : c#
public class PowersOf2
{
static void Main()
{
// Display powers of 2 up to the exponent of 8:
foreach (int i in Power(2, 8 ))
{
Console.Write("{0} ", i);
}
}
public static System.Collections.IEnumerable Power(int number, int exponent)
{
int result = 1;
for (int i = 0; i < exponent; i++)
{
result = result * number;
yield return result;
}
}
// Output: 2 4 8 16 32 64 128 256
}
|
и js1.7 :
function fib() {
var i = 0, j = 1;
while (true) {
yield i;
var t = i;
i = j;
j += t;
}
}
var g = fib();
for (var i = 0; i < 10; i++) {
console.log(g.next());
}
|
скажи мне в чем разница ? ну кроме вызова .next в js
они полностью одинаковы по функционалу и семантике использования
вот по той ссылке что ты добавил чувак сделал супер либу которая
с помощью yield повторяет функционал аналогичный await
если я с помощью микроскопа забиваю гвоздь, то микроскоп можно назвать молотком, но от этого микроскоп микроскопом не перестает быть, так что никогда не путай утилитарную фунциональность, семантику и контекст