node.js开发体验2
使用vscode开发Nodejs程序的使用方法

使⽤vscode开发Nodejs程序的使⽤⽅法最近再研究nodejs,苦苦再选⼀款轻量级的编辑器,由于本⼈⼀直从事.net开发,虽然微软推出了Visual Studio 开发node js 的插件,⽽且⽤着也不错,但是总感觉这个编辑器体量太⼤(⼀装就是⼏个G)!webstore是⽬前最受欢迎的Nodejs开发IDE之⼀。
受欢迎的原因,当然是对于Nodejs IDE的集成开发环境,集项⽬创建、编辑、调试于⼀体,简单的配置,强⼤的智能提⽰。
因为前⾯说过我⼀直做.net开发,刚好微软在2016年推出了vs code ⼀款轻量级的⽂本编辑器,可以编写各种语⾔的程序并进⾏调试,为了熟悉这款编辑器⽅便后续的开发,所以这次选⽤了vs code作为这次开发的编辑器(尽管VScode看起来更像是Uedit、Noteplus等强⼤⽂件编辑器,但它也提供了可扩展的、强⼤的提⽰功能(特别是⽂件间js引⽤提⽰),以及内置Nodejs调试功能,让它有别于⼀般的编辑⼯具。
)!当然也跟微软未来的战略有关!本⽂的前提是你已经安装了vs code代码编辑器和nodejs环境,如果没有安装,请⾃⾏下载安装!⼀、使⽤Express创建项⽬[这两步都在dos 模式下执⾏]1,安装全局的Express!(已安装请忽略)npm install -g express2,创建项⽬创建项⽬(创建⽂件夹名称ExpressApp)express ExpressApp⼩插曲:如果你习惯了Linux下的环境,你可以在⾃⼰电脑上安装cmder(不知道是什么东西,请⾃⾏百度),这个命令⾏⼯具排版漂亮,不像微软的dos 那么枯燥!我⽤的是Mini版本,如果你想体验linux下的全部功能,可以下载full版本。
3,下载第三⽅包(1)cmd命令⾏切换到项⽬⽬录cd d:\nodejs\ExpressApp(2)根据需要编辑package.json,运⾏如下指令安装第三⽅包npm install在项⽬⽬录下node_modules可见安装好的第三⽅包ExpressApp|– node_modules(3)运⾏项⽬npm start输出如下:**************.0startd:\Nodejs_Workspace\ExpressAppnode ./bin/www注:npm start指令会⾃动执⾏node ./bin/www⼆、使⽤VSCode开发Nodejs1、VSCode打开Nodejscode d:\nodejs\ExpressAppcode.注:在当前项⽬下创建ExpressApp.bat,输⼊“code .”即可,下次直接此⽂件直接使⽤VSCode打开Nodejs项⽬2、添加智能提⽰VSCode打开Nodejs项⽬,默认是没有智能提⽰。
前端开发 意见建议及收获体会

前端开发意见建议及收获体会**意见建议:**1. 注重用户体验:前端开发不仅仅是实现功能,更重要的是提供良好的用户体验。
要关注页面的加载速度、响应性、交互性和可视化效果,确保用户在使用你的产品时感到舒适和满意。
2. 保持代码质量:编写清晰、易于维护和扩展的代码非常重要。
遵循编码规范,使用适当的注释,合理组织文件结构,并进行代码审查,以确保代码的质量和可读性。
3. 学习新技术:前端技术发展迅速,不断有新的框架、工具和趋势出现。
保持学习的热情,跟进行业的发展,掌握新技术,以提升自己的开发能力。
4. 优化性能:性能对于前端开发至关重要。
要关注页面加载速度、文件大小和请求数量等方面的优化。
合理使用缓存、压缩资源、懒加载等技术来提高页面性能。
5. 进行兼容性测试:确保你的代码在不同的浏览器和设备上都能正常工作。
进行跨浏览器测试,并针对不同的平台进行适配,以提供一致的用户体验。
**收获体会:**1. 不断学习和成长:前端开发领域不断发展,新技术和工具层出不穷。
通过学习和实践,我不断提升自己的技能,紧跟行业的发展。
2. 团队合作和沟通:前端开发通常需要与设计师、后端开发人员和项目经理等多方面进行协作。
通过团队合作和有效的沟通,我学会了更好地理解需求,并与其他角色共同完成项目。
3. 解决问题的能力:在前端开发中,经常会遇到各种各样的问题和挑战。
通过解决这些问题,我培养了自己分析和解决问题的能力,学会了从错误中吸取教训并不断改进。
4. 看到成果的喜悦:当我成功地开发出一个功能完整、用户体验良好的界面时,那种成就感是无与伦比的。
看到自己的努力为用户带来价值,让我感到非常满足。
5. 持续改进的重要性:前端开发是一个不断迭代和改进的过程。
通过用户反馈和数据分析,我学会了不断优化和改进我的代码,以提供更好的用户体验。
前端开发是一个充满挑战和机遇的领域,通过不断学习、实践和关注用户体验,你将能够成为一名优秀的前端开发人员。
Node.js应用开发实战

Node.js应用开发实战随着互联网的飞速发展,前端开发技术也在不断的更新和变化。
Node.js 作为一种非常流行的JavaScript框架,越来越被前端开发者所关注和使用。
Node.js是一种非常高效和快速的开发框架,在服务器端处理请求和响应等任务时表现也很优异。
本篇文章将为大家介绍Node.js的开发实战,以及其在应用开发过程中的一些经验和技巧。
一、Node.js的简介和特点Node.js是一个开源的、跨平台的JavaScript运行环境,简称Node。
该环境基于Google的V8引擎构建,可以快速执行JavaScript代码。
作为一面旗帜,Node.js的开发特点包括:1.高效性:Node.js采用事件驱动、非阻塞I\/O的处理模式,具有高效性能和稳定性。
2.单线程:采用单线程事件循环机制,使得网络I\/O驱动非常高效。
同时,Node.js还通过支持多进程,达到更高的稳定性和性能。
3.模块化:Node.js采用了CommonJS模块规范,为开发者提供了方便、便利的工具,以便他们能够更新或安装软件包。
二、Node.js的应用场景随着Node.js的不断发展和成熟,它现在可以实现多种类型的应用,包括:1. Web应用程序:作为Web服务器,Node.js可以处理前后端的数据传输。
2. 网络工具:Node.js具有良好的网络通信能力,可以创建HTTP、TCP、UDP等协议的网络工具。
3. 大数据:Node.js可以轻松处理海量数据,例如构建实时数据流分析系统等。
4. 命令行工具:Node.js提供了命令行接口,可用于创建各种命令行工具。
5. 微服务:可以通过Node.js快速构建微服务架构。
三、Node.js应用开发的实践在开始Node.js应用开发之前,需要安装Node.js环境。
安装完成后,通过Node.js配置文件可以方便的编写和运行JavaScript代码。
(1)创建一个简单的服务器以下代码可以创建一个简单的HTTP服务器:```var http = require('http');http.createServer(function (req, res) {res.writeHead(200, {'Content-Type': 'text\/plain'});res.end('Hello World\');}).listen(8888, '127.0.0.1');console.log('Server running at http:\/\/127.0.0.1:8888\/');```在此示例中,服务器监听本机8888端口,并使用HTTP模块的createServer 方法创建一个服务器。
nodejs实训报告模板

nodejs实训报告模板一、实训内容本次实训内容为使用Node.js 搭建一个简单的Web 应用,实现用户注册、登录、留言等功能。
二、实现过程1. 环境搭建首先需要安装Node.js,可以在Node.js 的官方网站(2. 创建项目使用命令行工具进入项目所在的文件夹,通过以下命令创建一个新的Node.js 项目:npm init按照提示填写项目信息,完成后会生成一个`package.json` 文件。
3. 安装依赖在项目文件夹下,输入以下命令安装依赖模块:npm install express express-session cookie-parser body-parser ejs mongodb connect-mongo save其中,各个模块的作用如下:- `express`:用于构建Web 应用程序的框架。
- `express-session`:用于处理会话的中间件。
- `cookie-parser`:解析cookie 的中间件。
- `body-parser`:处理HTTP 请求体的中间件。
- `ejs`:前端模板引擎。
- `mongodb`:MongoDB 数据库的官方Node.js 驱动程序。
- `connect-mongo`:MongoDB 存储会话的中间件。
4. 编写代码我们编写的代码分为控制器和视图两部分。
考虑到MVC 设计模式,我们将控制器代码放在控制器文件夹中,视图代码放在视图文件夹中。
具体实现可以参考[我的GitHub 仓库](5. 测试完成代码编写后,使用以下命令启动应用程序:npm start然后在浏览器中访问`三、参考资料- [Node.js 官方网站](- [Node.js 中文网](- [Express 官方网站](- [MongoDB 官方网站](- [npm 官方网站](。
Node.js后端开发题

Node.js后端开发题Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它能够使JavaScript在服务器端运行,广泛应用于后端开发。
本文将介绍Node.js后端开发的一些重要概念和技术。
一、Node.js简介Node.js是一个开源、跨平台的运行时环境,可以用于构建高性能、可扩展的网络应用。
它基于事件驱动和非阻塞I/O模型,能够有效地处理大量并发请求,提供高效的网络通信能力。
二、Node.js的特点1. 异步非阻塞:Node.js采用事件驱动的方式,通过事件循环机制实现异步非阻塞操作,提高了程序的性能和吞吐量。
2. 单线程:Node.js采用单线程模型,但通过事件循环实现了并发处理,避免了线程切换的开销。
3. 高性能:Node.js利用了V8引擎的高性能解释执行特性,使得JavaScript代码在服务器端能够快速运行。
4. 轻量级:Node.js占用资源少,启动迅速,适合构建高性能的分布式系统。
5. 社区支持:Node.js拥有活跃的开发社区,有丰富的开源模块和工具可供使用。
三、Node.js后端开发常用框架1. Express:Express是Node.js中最流行的Web应用框架,它提供了简洁灵活的API,方便开发者快速构建Web应用。
2. Koa:Koa是由Express团队打造的下一代Web应用框架,它采用了更加优雅的异步函数处理方式,增加了开发效率。
3. Nest.js:Nest.js是一个基于Express的渐进式后端框架,可以构建高效、可扩展的企业级应用。
4. Meteor:Meteor是一个全栈JavaScript开发框架,它集成了前端和后端的开发,实现了实时数据同步和热代码更新。
四、Node.js后端开发常用模块1. HTTP模块:Node.js的核心模块之一,用于处理HTTP请求和响应,可以构建基于HTTP协议的Web服务器。
2. FS模块:Node.js的核心模块之一,用于文件操作,可以读取和写入文件,创建和删除文件目录。
nodejs实训总结

nodejs实训总结Node.js是一种基于Chrome V8引擎构建的JavaScript运行环境,可以让开发者使用JavaScript编写后端代码。
在Node.js实训中,学生可以通过完成一系列项目来学习和掌握Node.js的基本用法和技能。
以下是一些可能的Node.js实训项目和对应的实训总结:1. 构建一个简单的HTTP服务器这个项目让学生了解如何使用Node.js创建HTTP服务器,处理HTTP请求和响应。
学生可以通过这个项目了解Node.js中的HTTP模块和其API,以及如何在Node.js中编写HTTP服务器的基本流程。
2. 实现一个简单的Web应用程序这个项目让学生了解如何使用Node.js和Express框架创建Web应用程序。
学生可以通过这个项目学习Node.js中的Express框架和其API,以及如何在Node.js中编写Web应用程序的基本流程。
3. 构建一个命令行应用程序这个项目让学生了解如何使用Node.js创建命令行应用程序。
学生可以通过这个项目学习Node.js中的命令行工具和其API,以及如何在Node.js中编写命令行应用程序的基本流程。
4. 实现一个实时应用程序这个项目让学生了解如何使用Node.js和Socket.IO创建实时应用程序。
学生可以通过这个项目学习Node.js中的Socket.IO模块和其API,以及如何在Node.js中编写实时应用程序的基本流程。
总的来说,Node.js实训的目的是让学生通过实践掌握Node.js的基本用法和技能,包括HTTP服务器、Web应用程序、命令行应用程序和实时应用程序的实现。
通过这些项目的实践,学生可以更好地理解Node.js的运行原理和用法,为后续的学习和工作打下坚实的基础。
个人博客开发总结范文(3篇)
第1篇一、前言随着互联网的普及,博客作为一种个人表达和分享的平台,越来越受到广大网友的喜爱。
近年来,我也加入了博客开发的大军,经过一段时间的努力,我的个人博客已经初步完成。
在此,我想对自己在博客开发过程中的经历和心得进行总结,以期为后来者提供一些借鉴。
二、博客开发背景1. 兴趣驱动:自从接触到博客后,我便对其产生了浓厚的兴趣。
我认为,博客是一种很好的个人展示平台,可以记录自己的生活、分享自己的心得体会,同时也能结识志同道合的朋友。
2. 技术积累:在大学期间,我学习了HTML、CSS、JavaScript等前端技术,以及PHP、MySQL等后端技术。
为了进一步提升自己的技术能力,我决定尝试开发一个个人博客。
3. 实践锻炼:通过开发个人博客,我可以将所学知识应用到实际项目中,锻炼自己的编程能力和项目管理能力。
三、博客开发过程1. 需求分析在开发博客之前,我首先对博客的功能和需求进行了分析。
主要包括以下几个方面:(1)注册登录:用户可以注册账号并登录,方便管理和个性化设置。
(2)文章发布:用户可以发布自己的文章,包括标题、内容、标签等。
(3)评论功能:用户可以对文章进行评论,增加互动性。
(4)分类管理:将文章按照分类进行管理,方便用户浏览。
(5)搜索功能:用户可以通过关键词搜索文章。
(6)后台管理:管理员可以对文章、评论等进行管理。
2. 技术选型根据需求分析,我选择了以下技术进行博客开发:(1)前端:HTML5、CSS3、JavaScript(Vue.js框架)(2)后端:PHP、MySQL(3)服务器:阿里云ECS3. 系统设计在系统设计阶段,我主要考虑以下几个方面:(1)数据库设计:根据需求分析,设计数据库表结构,包括用户表、文章表、评论表等。
(2)功能模块划分:将博客分为前端和后端两个部分,前端负责展示和交互,后端负责数据处理。
(3)权限控制:实现用户注册、登录、权限验证等功能。
4. 编码实现在编码实现阶段,我按照以下步骤进行:(1)前端开发:使用HTML5、CSS3和Vue.js框架完成前端页面设计和交互。
js实训心得体会
js实训心得体会在经历了一段时间的JavaScript实训后,我深深体会到了其中的收获与感悟。
通过这次实训,我对JavaScript这门编程语言有了更深入的了解,同时也锻炼了自己的编程能力和解决问题的能力。
以下是我对这次实训的心得体会。
一、学习方法的改变在实训开始之前,我对JavaScript的了解仅限于书本知识和理论。
但是在实际应用中,我发现书本上的知识并不能完全满足实际需求。
于是我开始转变学习方法,不再仅仅局限于死记硬背,而是通过实际项目的练习来巩固知识。
我通过阅读优秀的开源代码和参与项目的开发,不断提升自己的编程能力。
二、项目经验的积累在实训中,我们需要完成一系列的项目任务。
这些任务涵盖了从简单的网页特效到复杂的网站开发。
通过这些项目的实践,我逐渐掌握了JavaScript的各种应用场景和技术。
同时,我也学会了如何在实际项目中进行需求分析、技术选择和实现方案设计。
这些宝贵的项目经验对我今后的职业发展将起到重要的推动作用。
三、团队合作与沟通能力的提升在实训中,我有幸和其他同学组成了一个团队,共同完成了一个较为复杂的项目。
在这个过程中,我尝试着与团队成员进行合作、交流和协商。
通过与团队成员的合作,我学会了如何在一个团队中发挥自己的优势,同时也学会了团队合作的重要性。
良好的沟通能力使得我们能够高效地分工合作,减少了项目开发中的冲突和误会。
四、问题解决能力的提高在实训过程中,我们经常会遇到各种各样的问题和bug。
有时候,一个看似简单的问题也可能会困扰我们很久。
但是在实训中,我们不能仅仅把问题交给他人解决,而是需要自己主动去查找解决方案。
通过不断的搜索和思考,我发现解决问题的过程并不是一帆风顺的,它需要我们不断地尝试和实践。
通过一次次的问题解决,我的问题解决能力也得到了提高。
总结起来,这次JavaScript实训对我来说是一次宝贵的经历。
在这个过程中,我不仅学会了JavaScript的各种用法和技巧,更重要的是培养了自己的学习方法、项目经验、团队合作和问题解决能力。
js实训心得体会
js实训心得体会近期,我参加了一门关于JavaScript的实训课程,通过两个月的学习和实践,我收获颇丰,对于JavaScript编程有了更深入的理解和掌握。
在这篇文章中,我将分享我在实训过程中的心得体会。
一、学以致用,理论结合实践理论知识的学习只是建立了一个基础,但是真正要掌握一门编程语言,还需要进行实际项目的实践。
通过实训课程,我得以接触到实际的编程项目,学以致用。
而且,在实践中我发现,很多知识点只有通过实际操作才能更好地理解。
在实训中,我遇到了不少问题,然而通过错误的尝试和不断的研究,我逐渐解决了这些问题,并且对JavaScript的应用有了更深入的认识。
二、学会主动解决问题在实训过程中,我遇到了很多困难和挑战,但是这些问题都成为了我进步的机会。
我逐渐学会了如何主动寻找问题的解决方法,而不是依赖他人的帮助。
通过查找资料、借鉴他人的经验和反复尝试,我成功解决了许多问题。
这种主动解决问题的态度将在我今后的学习和工作中非常有帮助。
三、注重代码规范在实践中,我明白了代码的规范性对于项目的重要性。
良好的代码规范不仅使代码易于维护,还能提高代码的可读性和可扩展性。
通过实训课程,我学会了如何编写优雅的代码,注重命名规范,合理使用注释,并且遵循代码缩进和格式化的要求。
这些良好的代码习惯将提高我的代码质量,也有助于与他人协作开发。
四、团队合作的重要性在实施实训项目时,我不再只是一个人独立工作,而是与团队成员合作开展工作。
通过团队合作,我学会了有效沟通、互相理解和分工合作。
团队合作的经验让我深刻体会到,一个好的团队可以达到事半功倍的效果。
我们通过互相讨论、交流意见,在团队中共同努力,顺利完成了项目。
这个过程也增加了我的合作意识,让我明白了团队合作的重要性。
五、不断学习和提升随着编程语言的不断发展和更新,我们必须与时俱进,不断学习和提升自己的技术。
通过实训课程,我学会了如何独立学习新知识,如何利用互联网进行学习资源的查找。
后端开发实践使用Nodejs构建可扩展的Web应用
后端开发实践使用Nodejs构建可扩展的Web应用后端开发实践使用Node.js构建可扩展的Web应用Node.js是一个基于Chrome V8引擎的JavaScript运行时,它以高效的事件驱动、非阻塞I/O模型而闻名。
这使得Node.js成为一种理想的选择,用于构建可扩展的Web应用程序后端。
在本文中,我们将探讨使用Node.js进行后端开发的一些实践,以及如何构建可扩展的Web 应用程序。
一、Node.js简介Node.js是一个开源的、跨平台的JavaScript运行时环境,它运行在服务器端,用于构建高效、可扩展的网络应用程序。
Node.js使用事件循环和非阻塞I/O模型,使得它能够处理大量的并发连接,而无需消耗太多的系统资源。
这使得Node.js非常适合构建实时应用和高性能的网络服务。
二、使用Express框架搭建Web应用Express是一个简洁而灵活的Node.js Web应用程序框架,它提供了一组丰富的特性和工具,使得构建Web应用变得更加容易。
以下是使用Express框架搭建一个简单的Web应用的步骤:1. 安装Node.js和npm在开始之前,你需要安装Node.js和npm(Node.js包管理器)。
你可以从Node.js官方网站上下载并安装最新版本的Node.js,安装完成后,npm将自动安装。
2. 初始化一个新的Node.js项目打开命令行界面,进入你希望创建项目的目录,执行以下命令来初始化一个新的Node.js项目:```npm init```这会创建一个`package.json`文件,其中包含了项目的配置信息。
3. 安装Express在项目的根目录下,执行以下命令来安装Express框架:```npm install express```4. 创建一个简单的Express应用在项目的根目录下,创建一个名为`app.js`的文件,并添加以下代码:```javascriptconst express = require('express');const app = express();app.get('/', (req, res) => {res.send('Hello, World!');});app.listen(3000, () => {console.log('Server is running on port 3000');});```以上代码创建了一个简单的Express应用,并监听3000端口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
var http = require('http'); http.createServer(function (req, res) { for(var i=0; i < 100*100000; i++){ } res.writeHead(200); res.end('Hello World'); }).listen(8080, "127.0.0.1");
●
讨论:
●
/node-js-coroutine.html ● /item?id=1549168
并行
博客首页:
var data = {}; // 获取最新10篇博客文章 db.getPosts(10, function(err, posts){ data.posts = posts; }); // 获取最新10条评论 db.getComments(10, function(err, comments){ ments = comments; }); // 获取Tags列表 db.getTags(function(err, tags){ data.tags = tags; }); // view.render(data);
并行辅助函数
改自: /control-flow
var data = {}; var combo = new Combo(function(){ view.render(data); 最终回调 }); // 获取最新10篇博客文章 combo.add(); db.getPosts(10, function(err, posts){ data.posts = posts; combo.finishOne(); }); // 获取最新10条评论 combo.add(); db.getComments(10, function(err, comments){ ments = comments; combo.finishOne(); }); // ….
●
联系我 ● ● http:// 微博平台 /qleelulu ● qleelulu#
var t; function loop(){ t = Date.now(); for(var i=0; i< 10000*100000; i++){ //console.log(i); } }; function hello(){ console.log((Date.now() - t) + 'ms'); }; setTimeout(loop, 100); setTimeout(hello, 100);
● ● ●
主线程代码同步串行执行 同一时间只有一个回调函数在执行 异步回调会放到主线程的执行队列中, 如果主线程正在执行其他代码,则等待 调度,否则马上执行
高并发环境下呢?
var http = require('http'); http.createServer(function (req, res) { for(var i=0; i < 100*100000; i++){ } res.writeHead(200); res.end('Hello World'); }).listen(8080, "127.0.0.1");
注: db 的方法都为异步操作
并行获取数据很好很强大, 可是, 怎么知道全部数据都获取完了呢?
function Combo(callback) { this.callback = callback; this.items = 0; } Combo.prototype = { add: function () { this.items++; }, finishOne: function () { this.items--; this.check(); }, check: function(){ if (this.items == 0) { this.callback.apply(this); } } };
//node.js var data; fs.readFile('file.txt', function(err, data){ data = data; } ); doSomething(data);
异步与回调
可读性
//传统的代码 var user = er.get('name'); var post = db.post.get(user.id); var tags = db.tags.get(post.id); //异步回调方式 er.get('name', function(err, user){ if(err) throw err; db.post.get(user.id, function(err, post){ if(err) throw err; db.tags.get(post.id, function(err, tags){ if(err) throw err; //doWithResults(); }); }); });
如果异步回 调中抛出异 常会?
异步回调函数外部 , 无法捕获到 异步回调函数内部的异常
process.on('uncaughtException', fn)
可以捕获到任何未捕获的异常 保证服务正常运作
可是, 没有了上下文变量
process.on('uncaughtException', function (err) { log(err); }); http.createServer(function(req, res){ try { mvcHandler(req, res); 如果此函数内部 } 有异步回调函数 catch(e){ 中抛出异常,客 res.writeHead(200); res.end('Server Error'); 户端则会得不到 } 响应 }).listen(8080, "127.0.0.1");
node.js ? 1. 2. 3. 4. 5. 单线程 非阻塞 IO Google V8 事件驱动 服务器端 JS
Hello World
$ node example.js
编程思想的改变
//传统代码 var file = open('file.txt'); var data = file.read(); doSomething(data);
Forever
●
确保脚本在持续运行着 Github: https:///indexzero/forever [sudo] npm install forever -g forever start run.js
●
●
●
Forever Web UI
Thank you!
by @QLeelulu
其实吧,只是权宜之计~
更多 Flow control / Async goodies
https:///joyent/node/wiki/modules#async-flow
Coroutine( 协程 )?
Cooperative threading of any sort is a bad idea. --ry@jsconf2010
●
●
JSON
●
●
Object.keys() Date.parse(), Date.now() __defineGetter__, __defineSetter__
更多 :/Talks/es5/slides.html
●
●
●
生产环境中, 怎样保证服务始终运行着?
Web Worker ?
●
耗 CPU 的操作放到 worker 中, 不阻塞主进程 多 CPU 支持 child_process.fork() cluster.fork()
● ● ●
异常处理
var fs = require('fs'); try{ fs.readFile('noFile', function(err, data){ if (err) throw err; console.log(data); } ); }catch(e){ console.log('error'); }
Node.js 开发体验
by QLeelulu
Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
在异步回调函数内部, 一定要做好异常处理!
调试
●
/blog/?p=911
ECMAScript 5
●
Array
●
indexOf(), lastIndexOf(), forEach(), map(), reduce(), filter(), every(), some() JSON.parse(), JSON.stringify()
//传统代码 var value = Memcache.get('key'); if(!value){ value = db.get('key'); Memcache.set('key', value); } // 对value进行处理 //异步回调方式 function doWithValue(value){ // 对value进行处理 } Memcache.get('key', function(err, value){ if(value){ doWithValue(value); }else{ db.get('key', function(err, value){ Memcache.set('key', value); doWithValue(value); }); } });