node基本介绍及使用
1.什么是node
简单的说node.js就是运行在服务端的JavaScript
官网地址:http://nodejs.cn/
2.node安装
2.1下载node
node下载:https://nodejs.org/en/download/
2.2命令行测试
node -v
3.快速入门
3.1控制台输出
创建demo1.js
var a = 1;
var b = 2;
console.log(a+b);
cmd中输入
node demo1.js //结果为3
3.2使用函数
创建demo2.js
//使用函数
var c = add(100,200);
console.log(c);
function add(a,b){
return a+b;
}
cmd中输入
node demo2.js //结果为300
3.3模块化编程
创建demo3_1.js
//被调用的模块
exports.add = function(a,b){
return a+b;
}
创建demo3_2.js
//调用模块
var demo = require("./demo3_1")
console.log(demo.add(200,300));
cmd中输入
node demo3_2.js //结果为500
3.4创建web服务器
参考node中文文档:http://nodejs.cn/api/
创建demo4.js
//创建web服务器
//http为node内置的web模块
var http = require("http")
//创建服务
http.createServer(function(request,response){
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
const body = 'hello world';
response.writeHead(200,{
'Content-Type': 'text/plain'
});
// 发送响应数据 "Hello World"
response.end(body);
})
.listen(8888); //监听8888端口
cmd中输入
node demo4.js
服务启动后,输入网站:http://localhost:8888 网页结果:"hello world" 按ctrl+c终止运行
3.5服务端渲染
创建demo5.js
//理解服务端渲染,循环输出hello world 10次
//客服端渲染可以看到for循环源码,而服务端渲染只能看到for循环的10次hello world结果
var http = require('http');
http.createServer(function (request, response) {
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// 发送响应数据 "Hello World"
for(var i=0;i<10;i++){
//write方法可以多次调用
response.write('Hello World\n');
}
//end方法只能调用一次,表示消息结束
response.end('');
}).listen(8888);
cmd中输入
node demo5.js
服务启动后,输入网站:http://localhost:8888 网页结果:10条"hello world"字符 按ctrl+c终止运行
右键“查看源代码”,并没有发现for循环语句,而是10条hello world,说明这个循环时在服务端完成的,而非客户端完成。这与jsp很相似。
3.6接受参数
创建demo6.js
//接受参数
var http = require('http');
//引入url模块,解析url
var url = require('url');
http.createServer(function(request, response){
//响应设置头信息
response.writeHead(200, {'Content-Type': 'text/plain'});
// 解析 url 参数,参考nodejs的api文档
var params = url.parse(request.url, true).query;
response.write("name:" + params.name);
response.write("\n");
response.end();
}).listen(8888);
cmd中输入
node demo6.js
服务启动后,输入网站:http://localhost:8888/?name=abc 网页结果:"name:abc" 按ctrl+c终止运行
node基本介绍及使用的更多相关文章
- node.js介绍和npm的使用
Node.js介绍 打开Nodejs英文网:https://nodejs.org/en/ 中文网:http://nodejs.cn/ 我们会发现这样一句话: 翻译成中文如下: Node.js 是一个基 ...
- Node.js 介绍及安装
Node.js是一个Javascript运行环境(runtime environment),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装.本文详细介绍了No ...
- Node.js介绍、优势、用途
一.Node.js介绍Node.js是一个javascript运行环境.它让javascript可以开发后端程序,实现几乎其他后端语言实现的所有功能,可以与PHP.Java.Python..NET.R ...
- Node.js 介绍
章节 Node.js 介绍 Node.js 入门 Node.js 模块 Node.js HTTP模块 Node.js 文件系统模块 Node.js URL模块 Node.js NPM Node.js ...
- node.js介绍
官网说明: Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable ...
- [Unity]插件Node Editor介绍 实现类似状态机画布的扩展
Unity自带的动画状态机有一套对策划非常友好的UI.但是Unity官方没有公开这些控件的api.除了Asset Store里一些已有的方案,我在这里介绍一个在github上的开源项目,封装了底层,但 ...
- node.js介绍及Win7环境安装测试(转)
官网描述: Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable ...
- Node.js权威指南 (1) - Node.js介绍
1.1 Node.js概述 / 2 1.1.1 使用Node.js能够解决什么问题 / 2 1.1.2 实现高性能服务器 / 2 1.1.3 非阻塞型I/O及事件环机制 / 2 1.1.4 Node. ...
- Node.js入门-Node.js 介绍
Node.js 是什么 Node.js 不是一种独立的语言,与 PHP,Python 等"既是语言优势平台"不同,它也不是一个 JavaScrip 框架,不同于 CakePHP,D ...
- 学习NodeJS第一天:node.js介绍
Node.JS 前辈 C 程序猿 Ryan Dahl(http://four.livejournal.com/)工程,根据 Google 著名的开源 JavaScript 发动机 V8 对于二次开发 ...
随机推荐
- 什么原因?全球许多网络提供商推迟部署IPv6
全球许多网络提供商推迟部署IPv6,指出升级路由器和交换机的成本以及NAT为扩展IPv4地址所取得的令人印象深刻的成就. 这并没有阻止像澳门CTM这样的互联网服务供应商不要冒险,以此为榜样,并且满足终 ...
- java:类集框架conllection接口list,set
类集中提供了以下几种接口: 1.单值操作接口:conllection,List,Set list和set是conllection接口的子接口 2.一对值的操作接口:Map 3.排序的操作接口:Sort ...
- docker for windows 中 镜像 microsoft/donet 的文件结构
一共有3个文件夹和1个文件: [Program Files] [Users] [Windows] License.txt 使用vs默认生成的dockerfile文件生成后,会新增app文件夹.
- IDEA将新建项目上传至GitLab
1.首先,需要你自己登录GitLab,并新建一个项目的链接,如下图所示: (此图为图三,该链接下面操作中将会用到!) 2.在idea上新建一个项目,完成之后,需要创建一个git仓库: 3.然后可以根据 ...
- JS中的执行机制(setTimeout、setInterval、promise、宏任务、微任务)
1.执行机制 JS 是单线程的,处理 JS 任务(程序)只能一个一个顺序执行,所以 JS 中就把任务分为了同步任务和异步任务.同步的进入主线程先执行,异步的进入Event Table并注册函数,当指定 ...
- Leetcode 2. Add Two Numbers(指针和new的使用)结构体指针
---恢复内容开始--- You are given two non-empty linked lists representing two non-negative integers. The di ...
- C++ 对象间通信框架 V2.0 ××××××× 之(三)
类定义:CSignalSlot ======================================================================= // SignalSlo ...
- Presenter 层
后是 Presenter 层,它是处理业务逻辑和业务数据的,所以必须持有 Model 的引用,同时要将处理完的数据交给 View 层用于显示,也必须持有 View 的引用,那么,一开始我们就要把这两层 ...
- VS2015中添加QT5.9.0插件
https://blog.csdn.net/hhhuang1991/article/details/79768595 VS2015里使用QTDIR路径查找QT开发包目录 路径配置操作系统环境变量里添加 ...
- cdn for js library
https://cdnjs.com/libraries/jquery https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.js htt ...