node.js的基础语法

因学习区块链,需要学习node.js。以往也没有学习过其他JavaScript语言,所以在JS领域算是一个小白。本篇只整理node.js的基础语法(持续更新)。

  Node.js是运行在服务器端的JavaScript. 其安装过程可以参考博客node.js 安装详细步骤教程。 这篇博客不仅详细介绍了node.js的安装过程,还介绍了npm的全局和缓存路径设置(这个很有用)。

1. npm基本命令

  NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题。其常用命令如下:

  • 安装/卸载/更新第三方模块
npm isntall bitcoinjs-lib -g #安装
npm uninstall bitcoinjs-lib  #卸载
npm update bitcoinjs-lib #更新

在使用npm install安装第三方模块的时候,加-g为全局安装。全局安装后的模块可以在命令行中直接使用。不加-g为本地安装的模块,可以通过require()来使用。

  • 初始化项目
npm init -y 

当新建一个node.js项目时,需要对其进行初始化并生成package.json文件。这个文件主要是用来记录这个项目的详细信息的,它会将我们在项目开发中所要用到的包,以及项目的详细信息等记录在这个项目中。比如,现在新建一个项目demo_2(目前该文件夹下为空):
在这里插入图片描述
打开命令行工具并跳转到demo_2下,执行npm init -y命令:
在这里插入图片描述
此时,在demo_2目录下会生成package.json文件。

  • 查看所有已经安装的模块及其版本号
npm list -g
2. Node.JS基础语法
2.1 定义变量

  Node.JS中提供了3种变量定义方式:const、var、let。

  • const: 定义常量变量,并且定义的时候完成初始化。初始化之后该值不可更改。
    在这里插入图片描述
  • var:定义的变量可以修改,如果不初始化会输出undefined,不会报错。
  • let:函数内部使用let定义后,对函数外部无影响。
    在这里插入图片描述

Tips:若在定义变量时,变量名在花括号中时,就是给多个变量赋值。
在这里插入图片描述

2.2 变量类型

  Node.JS中常用的数据类型有:Number(数字类型),String(字符串类型),Boolean(不布尔类型:真假类型),Null(空元素类型),Undefined(未定义类型),以及ES6新添加的Symbol(对象,象征)。可以使用typeof查看数据类型:
在这里插入图片描述
  node.js中的object对象和Python中的dict和list类型很像。具体如下:

//node.js中的object对象类型与Python中的dict\List等很像
//dict型
var o1=new Object();
console.log(typeof o1);
console.log(o1);
o1['a']=123;
o1['b']='124';
console.log(o1);

//数组型
var o2=new Array();
console.log(typeof o2);
o2[0]='abc';
o2[1]=134;
console.log(o2);

代码运行结果如下:

object
{}
{ a: 123, b: ‘124’ }
object
[ ‘abc’, 134 ]

补充
  1. 什么是ES6?
    ES6泛指“下一代 JavaScript 语言”。ECMAScript(浏览器脚本语言标准) 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现(另外的 ECMAScript 方言还有 Jscript 和 ActionScript)。
参考
  1. https://www.runoob.com/nodejs/nodejs-npm.html
  2. https://blog.csdn.net/chaoxiao1231/article/details/81937570
  3. https://www.cnblogs.com/guanghe/p/6560698.html
  4. https://www.cnblogs.com/luzhanshi/p/10762255.html
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
注意: Node.js MongoDB AngularJSWeb开发((中文版))pdf 由于文件比较大,次分为三部分上传,下载好三部分之后,放在同一个文件夹下,进行解压即可,另外两部分地址为: part2:http://download.csdn.net/detail/u010870518/9539548 part3:http://download.csdn.net/detail/u010870518/9539542 第1部分 引 言 第1章 介绍Node.js-to-AngularJS套件 3 1.1 了解基本的Web开发框架 3 1.1.1 用户 4 1.1.2 浏览器 4 1.1.3 Web服务器 6 1.1.4 后端服务 6 1.2 了解Node.js-to-AngularJS套件组件 7 1.2.1 Node.js 7 1.2.2 MongoDB 8 1.2.3 Express 9 1.2.4 AngularJS 9 1.3 小结 10 1.4 下一章 10 第2章 JavaScript基础 11 2.1 定义变量 11 2.2 了解JavaScript数据类型 12 2.3 使用运算符 13 2.3.1 算术运算符 13 2.3.2 赋值运算符 14 2.3.3 运用比较和条件运算符 14 2.4 实现循环 16 2.4.1 while循环 17 2.4.2 do/while循环 17 2.4.3 for循环 17 2.4.4 for/in循环 18 2.4.5 中断循环 19 2.5 创建函数 19 2.5.1 定义函数 20 2.5.2 传递变量给函数 20 2.5.3 从函数返回值 20 2.5.4 使用匿名函数 21 2.6 理解变量作用域 22 2.7 使用JavaScript对象 22 2.7.1 使用对象语法 23 2.7.2 创建自定义对象 23 2.7.3 使用原型对象模式 24 2.8 处理字符串 25 2.8.1 合并字符串 26 2.8.2 在字符串中搜索子串 26 2.8.3 在一个字符串中替换单词 27 2.8.4 将字符串分割成数组 27 2.9 使用数组 27 2.9.1 合并数组 28 2.9.2 遍历数组 29 2.9.3 将数组转换为字符串 29 2.9.4 检查数组是否包含某个条目 29 2.9.5 在数组中添加条目和删除条目 30 2.10 添加错误处理 30 2.10.1 try/catch块 30 2.10.2 抛出你自己的错误 31 2.10.3 使用finally 31 2.11 小结 32 2.12 下一章 32 第2部分 学习Node.js 第3章 开始使用Node.js 35 3.1 了解Node.js 35 3.1.1 谁在使用Node.js 35 3.1.2 Node.js的用途 36 3.2 Node.js安装 36 3.2.1 纵观Node.js安装位置 36 3.2.2 验证Node.js可执行文件 37 3.2.3 选择Node.js IDE 37 3.3 使用Node.js包 38 3.3.1 什么是Node封装模块 38 3.3.2 了解Node包注册表 38 3.3.3 使用Node包管理器 38 3.3.4 搜索Node封装模块 39 3.3.5 安装Node封装模块 40 3.3.6 使用package.json 41 3.4 创建Node.js应用程序 43 3.4.1 创建Node.js模块封装 43 3.4.2 将一个Node.js封装模块发布到NPM注册表 45 3.4.3 在Node.js应用程序中使用Node.js封装模块 46 3.5 将数据写入控制台 47 3.6 小结 49 3.7 下一章 49 第4章 在Node.js中使用事件、监听器、定时器和回调 51 4.1 了解Node.js事件模型 51 4.1.1 比较事件回调和线程模型 51 4.1.2 在Node.js中阻塞I/O 52 4.1.3 会话示例 54 4.2 将工作添加到事件队列 54 4.2.1 实现定时器 55 4.2.2 使用nextTick来调度工作 58 4.2.3 实现事件发射器和监听器 59 4.3 实现回调 62 4.3.1 向回调函数传递额外的参数 63 4.3.2 在回调中实现闭包 64 4.3.3 链式回调 65 4.4 小结 66 4.5 下一章 66 第5章 在Node.js中处理数据I/O 67 5.1 处理JSON 67 5.1.1 把JSON转换成JavaScript对象 67 5.1.2 把JavaScript对象转换为JSON 68 5.2 使用Buffer模块缓冲数据 68 5.2.1 了解缓冲数据 69 5.2.2 创建缓冲区 69 5.2.3 写入缓冲区 70 5.2.4 从缓冲区读取 71 5.2.5 确定缓冲区长度 72 5.2.6 复制缓冲区 73 5.2.7 对缓冲区切片 74 5.2.8 拼接缓冲区 75 5.3 使用Stream模块来传送数据 76 5.3.1 Readable流 76 5.3.2 Writable流 78 5.3.3 Duplex流 81 5.3.4 Transform流 82 5.3.5 把Readable流用管道输送到Writable流 84 5.4 用Zlib压缩与解压缩数据 85 5.4.1 压缩和解压缩缓冲区 85 5.4.2 压缩/解压缩流 87 5.5 小结 88 5.6 下一章 88 第6章 从Node.js访问文件系统 89 6.1 同步和异步文件系统调用 89 6.2 打开和关闭文件 90 6.3 写入文件 91 6.3.1 简单文件写入 91 6.3.2 同步文件写入 92 6.3.3 异步写入文件 93
Node.js是一个基于Chrome V8引擎的JavaScript运行时。它使用事件驱动、非阻塞I/O模型,使得它非常适合构建高性能的、可扩展的网络应用程序。 在Node.js中,可以使用require关键字来导入内置的API模块,比如http模块。使用http模块可以创建一个基本的Web服务器,以下是创建服务器的步骤: 1. 导入http模块:使用`const http = require('http')`来导入http模块。 2. 创建服务器实例:使用`http.createServer()`来创建一个服务器实例。 3. 绑定request事件:使用`server.on('request', (req, res) => { ... })`来给服务器绑定request事件,以监听客户端的请求。在事件处理函数中,可以访问`req.url`来获取客户端请求的URL,`req.method`来获取请求的方法。 4. 设置响应头和内容:使用`res.setHeader('Content-Type', 'text/html;charset=utf-8')`来设置响应头的Content-Type为text/html,并设置字符编码为utf-8。使用`res.end(str)`将要返回给客户端的内容写入响应流。 5. 启动服务器:使用`server.listen(80, () => { console.log('server running at http://127.0.0.1'); })`来启动服务器,监听端口号为80。 以下是一个使用http模块创建基本Web服务器的示例代码: ```javascript // 导入http模块 const http = require('http') // 创建web实例 const server = http.createServer() // 给服务器绑定request事件,监听客户端请求 server.on('request', (req, res) => { const str = `客户的 url is ${req.url}请求方法 method is ${req.method}` res.setHeader('Content-Type', 'text/html;charset=utf-8') res.end(str) }) // 启动服务器 server.listen(80, () => { console.log('server running at http://127.0.0.1'); }) ``` 此外,Node.js还提供了其他很多内置模块,可以用于文件操作、路径处理、网络通信等。比如,可以使用path模块来处理文件路径,例如获取文件的扩展名: ```javascript const path = require('path') const fpath = '/a/b/c/index.html' const wenjian = path.extname(fpath) console.log(wenjian) ``` 以上是关于Node.js语法基础的介绍,包括导入模块、创建基本的Web服务器和使用其他内置模块的示例。希望对你有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值