服务端开发 node.js

服务端开发 node.js 前言什么是JavaScriptJavascript是一门运行在浏览器端的脚本语言。JavaScript的运行环境是浏览器javaScript 可以用来做什么在浏览器端主要是使用js来实现DOM操作。表单验证实现一些特性和动画更好的组织页面的结构tab选项卡、轮播图可以使用ajax来提升用户体验页游换句话说就是JavaScript脱离了浏览器上述功能也就不存在了。浏览器中的JavaScript 不可以做什么作为一门编程语言js和其他语言c、c、c#、java、php相比它不能干什么文件操作网络编程os相关操作数据库操作…于是在2009年Ryan正式推出了基于JavaScript语言和V8引擎的开源Web服务器项目Node.js。Node第一次把JavaScript带入到后端服务器开发。因为node的出现JavaScript可以脱离浏览器运行浏览器的一些限制当然也没有了部分功能也就不存在了比如操作dom运行在node上的JavaScript可以做什么呢可以制作命令行工具所谓命令行工具就是通过dos命令来操作的软件可以做服务端的开发 基于node可以开发服务器应用就像php一样什么是Node.js官网https://nodejs.org/en/中文网站http://nodejs.cn/Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型使其轻量又高效。Node.js 的包管理器 npm是全球最大的开源库生态系统。node.js是一个运行环境和浏览器是同等地位。node.js这个运行环境是基于chrome v8引擎的在浏览器端写的那些和浏览器环境无关的代码在node.js中也是同样支持的。Node.js可以做什么?使用Node.js可以轻松的进行服务器端应用开发。具体来说体现在两个方面webapp网站命令行包括命令行工具和交互式终端程序既然已经有了java、PHP等后台语言为何还需要Node.jsio密集型 — 异步io操作实时web应用 ---- socket.io实时web应用双十一、12306、游戏、在线客服/咨询nodejs的特点单线程 JavaScript 特点程序按照连续顺序排下来前面的必须处理好后面才会执行。异步式I/O(非阻塞式) 当有多个任务需要执行所需耗时为多个任务中最高耗时同步编程为多个任务耗时总和事件驱动机制 根据当前出现的事件调动资源进行相关的处理跨平台JavaScript 和 node.js 区别过去js有两个名称ECMAScript版本号 官方Javascript民间ECMAScript才是语言本身。ECMAScript语言在不同的环境中分别对应于不同的叫法在浏览器端执行的ECMAScript称之为javascript在服务端执行的ECMAScript称之为node.js在flash palyer中执行的ECMAScript称之为ActionScript一般说js就是指浏览器端的javascriptecmascript一般说node.js就是指服务端的javascriptecmascript但是node.js本身是运行环境。小结Node.js是一个基于chrome v8引擎的运行环境。在运行环境中可以执行js代码同时结合这个环境提供的api就可以实现服务端的编程。和浏览器端的js对比浏览器端是一个运行环境在这个运行环境中可以执行js代码同时结合这个环境提供的api就是BOM和DOM就可以实现DOM操作。为什么 JavaScript 是单线程 JavaScript 语言的一大特点就是单线程也就是说同一个时间只能做一件事。那么为什么JavaScript 不能有多个线程呢 这样能提高效率啊。JavaScript 的单线程与它的用途有关。作为浏览器脚本语言JavaScript 的主要用途是与用户互动以及操作 DOM。这决定了它只能是单线程否则会带来很复杂的同步问题。比如假定JavaScript 同时有两个线程一个线程在某个 DOM 节点上添加内容另一个线程删除了这个节点这时浏览器应该以哪个线程为准i/o 是指 input/output输入和输出文件操作。掌握命令行基础指令cls md cd dir PATHcls 清屏md 创建文件夹 make directoryrmdir 删除空文件夹 remove directorydir 查看文件目录cd 转换路径cd … 转到上一级目录path 查看当前全局环境中的所有路径命令行运行程序过程当在命令行输入一个命令node的时候首先在命令行定位的路径下查找输入的命令程序node.exe|node.cmd|node.bat|node.shell找到就运行它找不到就去全局环境变量path存储的路径中依次查找如果没有就报错了(node)不是内部运行命令