nodejs入门--nodejs简介

javaScript可以用来做什么

  • 最初,js被用来在浏览器端实现表单的验证。
  • 在浏览器端可以使用js操作dom实现各种各样的效果和动画。
  • 浏览器端的js可以处理数据,实现各种页面功能。
  • 可以使用JavaScript发出http请求,实现各种交互任务。

以上,是浏览器中js的功能。换句话说,就是JavaScript脱离了浏览器,上述功能也就不存在了。

当然,浏览器也会对JavaScript有一些限制,比如一些常见的文件操作,系统接口的调用,数据库连接等等这些功能都无法实现。

于是在2009年,Ryan正式推出了基于JavaScript语言和V8引擎的开源Web服务器项目,命名为Node.js。虽然名字很土,但是,Node第一次把JavaScript带入到后端服务器开发,加上世界上已经有无数的JavaScript开发人员,所以Node一下子就火了起来。

正是因为node的出现,我们的JavaScript才可以脱离浏览器去运行,当然也没有了浏览器的一些限制了。同样的,在浏览器的部分功能也就不存在了,比如:操作dom!

那么运行在node上的JavaScript可以做什么呢?
  • 可以制作命令行工具(所谓命令行工具就是通过dos命令来操作的软件)
  • 可以做服务端的开发 (基于node可以开发服务器应用,就像php一样)

nodejs是什么

Node.js® is a JavaScript runtime built on Chrome’s V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js’ package ecosystem, npm, is the largest ecosystem of open source libraries in the world.

中文网站:http://nodejs.cn/

nodejs是为JavaScript提供运行环境的一款软件(windows版本,linux版本,mac版本),它的功能就是去执行JavaScript程序。

  • Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。
  • Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。
  • Node.js 的包管理器 npm,是全球最大的开源库生态系统。

记住一点:node.js其实一个运行环境,和浏览器是同等地位。 并且,node.js这个运行环境是基于chrome v8引擎的,说明在浏览器端写的那些和浏览器环境无关的代码,在node.js中,也是同样支持的。

有很多初学者认为:node.js是一门语言,这是极其错误的。

node.js和javascript到底是什么关系呢?

回顾js的历史:

94年,livescript

95年,javascript

后来交给了一个机构----ECMA,其实将js进行了标准化—ECMAScript规范

1999年-2009年叫 ECMAScript3.0

2009年-2015年叫 ECMAScript5.0

16年至今叫 ECMAScript 6

所以,过去js有两个名称:

ECMAScript版本号 (官方)
Javascript(民间)
以前,两种叫法没啥区别。都是在浏览器端来执行的脚本语言。 但是,随着node.js的出现,其实ECMAScript 和 javascript是有区别的, ECMAScript才是语言本身。

在这里插入图片描述

nodejs可以用来做什么?

使用Node.js可以轻松的进行服务器端应用开发,PHP、Python、Ruby能做的事情Node.js几乎都能做,而且在某些方面可以做的更好。

  • 文件操作
  • 网络编程
  • os相关操作
  • 数据库操作

世界上70%以上的网站都是使用php来做的。 世界上100%的网站都使用了js。

具体来说,体现在两个方面:

  • webapp(网站)
  • 命令行(包括命令行工具和交互式终端程序)

越来越多的网站,都开始大面积的使用node.js
阿里(天猫)
uber
Yahoo
Paypal
Group on

既然已经有了PHP等后台语言,为何还需要Node.js?

  • io密集型 — 异步io操作
  • 实时web应用 ---- socket.io

io是指input/output,输入和输出,文件操作。 实时web应用:双十一、12306、游戏、在线客服/咨询

nodejs的特点

  • 单线程
  • 异步式I/O
  • 事件驱动机制
  • 跨平台
    其实,这些特点是js本身的,只不过在node.js中表现尤为突出。

Node.JS超越jQuery成为Github上第二受欢迎的开源项目 GitHub公布10大热门编程语言。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值