本着对js这门语言的喜爱,我阅读了node.js。希望阅读过程中对其有所收获。以此共勉
我惊奇于Node.js竟然是一门这么年轻的语言,2009年就诞生了
高性能web服务器有两个要点:事件驱动、非阻塞IO
js有到高性能、符合事件驱动、没有历史包袱(学习难度不大,没有很多历史遗留下来的IO阻塞)
除了HTML、WebKit和显卡这些UI相关技术没有支持外,Node的结构与Chrome十分相似。
在Node中,js不再局限于浏览器本身,可以访问本地文件,可以搭建WebSocket服务器端,可以连接数据库,可以如Web Workers一样玩转多进程。
这些特性促使了桌面应用程序也可以用html、css、js来实现
这个是经典的异步io的请求。
在Node中,绝大多数操作都是异步请求,以节省操作的事件。
事件的编程方式具有轻量级、松耦合、只关注事务点等优势,但是在多个异步任务的场景下,事件与事件之间各自独立,如何协作是一个问题。
前面可以看到,回调函数无处不在。这是因为在JavaScript中,我们将函数作为第一等公民来对待,可以将函数作为对象传递给方法作为实参进行调用。(js独特的函数可以作为参数转递)。
回调函数也是最好的接受异步调用返回数据的方式。
我这里补一下回调函数的知识(目前我还是低级开发,用到自定义的回调函数还是比较少的