Node.js是什么?

我们看看百科里怎么说的?JavaScript是一种运行在浏览器的脚本,它简单,轻巧,易于编辑,这种脚本通常用于浏览器的前端编程,但是一位开发者Ryan有一天发现这种前端式的脚本语言可以运行在服务器上的时候,一场席卷全球的风暴就开始了。   Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用。
  Node是一个Javascript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引 擎执行Javascript的速度非常快,性能非常好。Node对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好。

你看懂了吗?

说真的,我是没看懂!

那么Node.js到底是什么呢?

Web后端开发语言,这个你懂不懂?

asp, jsp, php是干什么的你懂不懂?

好吧,你希望用JS去访问数据库处理用户请求吗?

===============================================

Node.js是开源项目,它的创始人是Ryan Dahl。后来这个开源项目非常火爆,Joyent这个公司注意到了Node.js,决定赞助这个项目。Ryan Dahl于2010年加入该公司,全职负责Node.js项目的开发。

关于Node.js,后来因为Joyent的管理问题,几个重要的开发者出走,另立山头,开始了一个叫做io.js的开源项目,其社区一度非常活跃。不过,2015年9月15日,io.js和Node.js再度合体,Node.js v4.0.0发布了。

下载Node.js

官网地址:https://nodejs.org/en/

您可以直接点击下图的链接进入:

我的是Windows 7 x64的系统,选择的版本是:v4.2.4 LTS,相对来说更加成熟可靠的版本;

安装Node.js

按步骤安装就行了,没什么好说的,贴图只是给没接触过的一个直观的印象!

安装完成后,开始菜单里会添加一个Node.js的目录,如下图所示:

点击Node.js,打开一个命令行窗口,输入“os”回车试试

第一个Web服务器

接触的多了,发现好多语言进行Web开发的时候是可以基于语言本身自己写Web服务器的!
Go语言如此,Python语言如此,Node.js也是如此;

但通常我们在项目开发时可能不会这样做,因为通常已经有比较完善的服务器框架可以使用了。

将以下代码保存为“helloworld.js”文件:

var http = require('http');

var server = http.createServer(function(request, response) {
response.end("hello world!");
}); server.listen();

一个Web服务器就这么几行代码吗?
对,没错!!不过这是一个比较弱智的Web服务器,它只会返回“hello world!”。

require对于很多前端小伙伴应该是再熟悉不过了吧?

只要会js就行了,你就可以成为Web开发前端+后端的高手!

打开命令行,切换到“helloworld.js”文件的保存目录,执行:node helloworld.js

如果你开启了防火墙,应该会看到下图:

点击允许访问,打开浏览器,输入“http://localhost:8080/”访问看看吧!

注意:如果是一直处于cmd模式会占用端口号,可以直接CTR+C退出node

小结

到这里Node.js Web的开发环境就搭建完了,就这么简单,你也试试吧!

===============================================================

借鉴:https://blog.csdn.net/testcs_dn/article/details/50532775

Windows 7下Node.js Web开发环境搭建笔记的更多相关文章

  1. 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记

    近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...

  2. node.js之开发环境搭建

    一.安装linux系统 (已安装linux可跳此步骤) 虚拟机推荐选择:VirtualBox 或者 Vmware (专业版永久激活码:5A02H-AU243-TZJ49-GTC7K-3C61N) 我这 ...

  3. 《Python入门》Windows 7下Python Web开发环境搭建笔记

    最近想尝试一下在IBM Bluemix上使用Python语言创建Web应用程序,所以需要在本地搭建Python Web的开发测试环境. 关于Python的版本 进入Python的网站,鼠标移到导航条上 ...

  4. node.js vue开发环境搭建

    开发工具安装 1.安装node.js 双击安装程序 node-v8.9.3-x64.msi,进行安装即可 2.设置taobao镜像 npm config set registry https://re ...

  5. Ubuntu 14.04下搭建Node.js的开发环境

    最近想找一个轻量级且支持快速开发的服务开发平台,选来选去选择了Node.js,当时有几种选择: Python + Django(用过Django,虽然开发快速,但是感觉性能并不太好). Ruby + ...

  6. Web开发环境搭建 Eclipse-Java EE 篇

    Web开发环境搭建 Eclipse-Java EE 篇 [原创内容,转载注名出处] 1. 下载和安装 1.1 下载JDK 在Java官方网站下载最新版本的 Java SE:  http://www.o ...

  7. 记录一下Web开发环境搭建 Eclipse-Java EE 篇

    转自https://www.cnblogs.com/yangyxd/articles/5615965.html Web开发环境搭建 Eclipse-Java EE 篇 [原创内容,转载注名出处] 1. ...

  8. mac10.9下eclipse的storm开发环境搭建

    --------------------------------------- 博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1& ...

  9. windows下vue+webpack前端开发环境搭建及nginx部署

    一.开发环境搭建 1.前端框架一般都依赖nodejs,我们首先要安装node.js.请参考http://www.cnblogs.com/wuac/p/6381819.html. 2.由于许多npm的源 ...

随机推荐

  1. mysql分表之水平分割

    一.背景 老大安排要对某张大容量表进行分割,根据年份分割成多张表. 二.水平分割 水平拆分是指数据表行的拆分,表的行数超过百万行时,就会变慢,这时可以把一张的表的数据拆成多张表来存放. 定义规则分表后 ...

  2. [Windows] 智慧职教刷课软件(职教雨滴1.9更新完成)

    (智慧职教刷课软件-职教雨滴)支持职教云(云课堂)的课程 2019年10月17日 16:19:57 增加支持资料库,MOOC 点击链接加入群聊[职教雨滴反馈群]:https://jq.qq.com/? ...

  3. System.out.println高并发下导致应用暂停

    今天在进行序列号压测的时候,通过调用genSeqId方法来获取序列号,100并发,16台压测机器,发现无论怎么压测,调用量达到140w左右的时候,此方法的ops直接掉到了0,具体图示如下: 从上图可以 ...

  4. 【zabbix服务】修改zabbix_server默认端口号

    1. zabbix-server的默认端口号是10051.如果存在端口号冲突,需要更改端口号. 2. 更改配置文件 # 监听端口这行默认被注释的(将下面的端口改为自己定义的) [root@tanbao ...

  5. IPFS学习-DNS链接

    DNSLink 什么是DNS链接 DNS链接使用DNS TXT记录映射域名(如ipfs.io)到一个IPFS地址.因为你可以编辑自己的DNS记录,可以使他们总是指向最新版本的IPFS中的对象(如果修改 ...

  6. VisualStudio编译不生成xml、pdb文件的方法

    我们为了减少发布/Release时项目的体积,希望在编译时不生成xml注释文档(包括引用的其他类库),和pdb调试文件 用你喜欢的文本编辑器打开项目.csproj文件,找到PropertyGroup节 ...

  7. Access the Security System in Code 在代码中访问安全系统

    This lesson will guide you through using the static SecuritySystem class to check whether or not a u ...

  8. 【转载】C#string.Formart的字符串格式化

    String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项.Stri ...

  9. QT--动态人流量监测系统

    QT--动态人流量监测系统 简介: 本项目使用了百度AI的动态人流量监测api,以人体头肩为主要识别目标,适用于低空俯拍,出入口场景,可用于统计当前图像的锁定人数和经过的人数 项目功能 本项目分为相机 ...

  10. alluxio 信息索引

    最近要使用到 alluxio,发现网上还是有一些文档很是不错,现在通过这篇文章进行索引一下,进行备忘: https://edgedef.com/2017/08/17/alluxio-%E5%B0%8F ...