Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.9k views
in Technique[技术] by (71.8m points)

关于rxjs使用的问题

rxjs虽然对着文档学着使用了一下,但感觉还是很难融会贯通。
我设计了这样一个简单的场景,一个异步的函数get,希望他同步得按顺序依次打印一个数组,并记录这个函数调用的次数。
不使用rxjs我是这样实现的:

const arr = [1, 2, 3, 4, 5]
let count = 0;

f(0)

function get(callback) {
    setTimeout(callback, 1000)
}

function f(idx) {
    if (arr.length === idx) {
        console.log(`共执行${count}次`)
        return
    }
    get(() => {
        console.log(arr[idx])
        ++count
        f(++idx)
    })
}

请问各位,在rxjs下,怎样优雅得实现这个功能?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
等待大神解答

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...