node文档:http://nodejs.cn/api/

1、控制台输出 (node的输出是在命令框中输出的):

  有颜色的输出 :console.log('\x1B[33m%s\x1b[0m:', path);   //yellow

  通过封装好的插件(vue-cli中有安装 chalk插件的),可以直接使用方法显示不同的颜色。如: console.log(chalk.green('当前环境'))  // 绿色文字

2、后端的开发一般是没有热启动的,但是后端程序的 编辑器(IDE) 是有 调试功能的。调试模式启动程序,是有重启按键的。所以后端程序的开发都是借助 IDE 进行重启的。

3、vs code 指定js文件进行调试(按F5,只会从默认的文件开始执行):配置 launch.json 文件

4、node如何查看文档:http://www.imooc.com/wenda/detail/428313

5、node中 一个模块中有各种API(类、方法、属性 等): 比如http模块,中有  http.Server 类(这个类下又有各种API)、http.request方法。

6、node 三大模块:https://www.imooc.com/video/20557 (目前node最多是用在 中间层,也就是作为一个web服务器的功能。目前只要 和服务器相关的模块熟悉就可以了)

  a、常用 全局模块(全局对象):不用下载,不用引入(通过require),哪里都可以直接使用。https://www.runoob.com/nodejs/nodejs-global-object.html

process.env    // 环境变量
process.argv // 启动 Node.js 进程时传入的命令行参数

    1、__filename: 表示当前正在执行的脚本的文件名。它将输出文件所在位置的绝对路径,且和命令行参数所指定的文件名不一定相同。 如果在模块中,返回的值是模块文件的路径。

    2、__dirname:  表示当前执行脚本所在的目录。

    3、setTimeout、clearTimeout:

    4、setInterval、clearInterval:

    5、console:

    6、process:(webpack中经常用到它的 环境变量属性)

    7、require、exports:模块相关的API

  b、常用 内置模块(原生模块):不用下载,但是需要引入模块,再使用。    https://blog.csdn.net/qq_43119195/article/details/84632716 或 https://ruphi.cn/archives/111/ 或 https://m.html.cn/qa/node-js/12042.html

    内置模块有:fs、URL、queryString、path、http、crypto、util 模块

let path = require('path')  // path 模块,需要先引入
console.log(path.dirname('文件路径'))

    1、File System模块

    2、URL模块:

      i、将一个url地址变成一个对象:

        url.parse(urlString,[,options]);

      ii、将对象(格式正确)转化成一个url地址:

        url.format(URL[, options])

    3、queryString模块:queryString就是查询字符串,模块提供了一些实用函数,用于解析与格式化 URL 查询字符串

      i、   对给定的 str 进行 URL 编码。

      ii、  对给定的 str 进行 URL 解码。

      iii、 将对象转化成字符串(url参数显示的字符串)

      iiii、将query字符串转化为对象

    4、path模块

      i、    路径的拼接

      ii、   判断path是否是绝对路径,返回值是布尔值

      iii、  获取一个路径中的文件夹名

      iiii、 获取一个路径中的文件名

      iiiii、返回 文件路径 的扩展名

    5、http模块:

    6、crypto模块:加密用的

    7、zlib模块:zlib就是文档压缩,zlib模块提供通过 Gzip 和 Deflate/Inflate 实现的压缩功能

    8、util 模块:常用工具

    9、OS 模块:os 模块提供了一些基本的系统操作函数

    10、

  c、自定义模块:自己写的模块

exports   // 导出模块(以模块的属性导出,如 exports.8a)
modules // 导出模块(以对象的形式导出)
require // 导入模块

7、nodejs的回调函数:

  a、回调函数入参,错误优先,没有错误的话err传入一个null


node API讲解:

1、node 的模块系统:(所有脚手架工具的模块功能都是基于node 的模块系统)

  a、一个文件就是一个模块

2、http.createServer 方法: http://nodejs.cn/api/http.html#http_http_createserver_options_requestlistener

   创建一个 http.Server 实例(即服务器实例,也可以使用http.Server 类创建一个http.Server 实例)

const http = require('http');

const server = http.createServer((req, res) => {
res.end('Hello World\n');
}); server.listen(8000); // 设置监听 server服务器的端口(即电脑监听到访问8000端口的请求,就会交给这个server处理)

3、 http.request:http://nodejs.cn/api/http.html#http_http_request_options_callback

  发送一个http请求

4、querystring.stringify:http://nodejs.cn/api/querystring.html#querystring_querystring_stringify_obj_sep_eq_options(序列化为 URL 查询字符串的对象)

nodejs 程序(有的功能和前端js是不一样的)的更多相关文章

  1. 后端程序员写的前端js代码模板

    看几天的javascript面向对象和基础等之类相关javascript的知识,因为自己是写php的,也写过java,所以想在写javascript代码的时候也能用上面向对象的思想, 折腾了一整天的j ...

  2. 微信小程序 支付功能(前端)的实现

    只提供微信小程序端代码: var app = getApp(); Page({ data: {}, onLoad: function (options) { // 页面初始化 options为页面跳转 ...

  3. 微信小程序支付功能前端流程

    只是分享一下小程序支付功能的前端流程和代码, 仅供参考(使用的是uni app). handleCreate () { /** 第一步:前台将商品数据发送到后台,后台创建订单入库并返回订单id等信息 ...

  4. 用chrome的snippets片段功能创建页面js外挂程序,从控制台创建js小脚本

    用chrome的snippets片段功能创建页面js外挂程序,从控制台创建js小脚本 Chrome的snippets是小脚本,还可以创作并在Chrome DevTools的来源面板中执行.可以访问和从 ...

  5. 前端(十七)—— jQuery基础:jQuery的基本使用、JQ功能概括、JS对象与JQ对象转换、Ajax简单应用、轮播图

    jQuery的基本使用.JQ功能概括.JS对象与JQ对象转换.Ajax简单应用.轮播图 一.认识jQuery 1.什么是jQuery jQuery是对原生JavaScript二次封装的工具函数集合 j ...

  6. 前端Js框架汇总

    概述: 有些日子没有正襟危坐写博客了,互联网飞速发展的时代,技术更新迭代的速度也在加快.看着Java.Js.Swift在各领域心花路放,也是煞是羡慕.寻了寻.net的消息,也是振奋人心,.net co ...

  7. 闲聊——浅谈前端js模块化演变

    function时代 前端这几年发展太快了,我学习的速度都跟不上演变的速度了(门派太多了,后台都是大牛公司支撑类似于facebook的react.google的angular,angular的1.0还 ...

  8. 前端Js框架 UI框架汇总 特性 适用范围 选择

    身为一个资深后端工程师,面对层出不穷的前端框架,总让人眼花缭乱,做一个综合解析贴,从全局着眼,让我们明白各种前端框架的应用范围,为如何选择前端框架,从不同的维度提供一些线索,做为一个长期优化贴,欢迎指 ...

  9. 前端Js框架汇总【转】

    概述: 有些日子没有正襟危坐写博客了,互联网飞速发展的时代,技术更新迭代的速度也在加快.看着Java.Js.Swift在各领域心花路放,也是煞是羡慕.寻了寻.net的消息,也是振奋人心,.net co ...

随机推荐

  1. Delphi Indy IDHttp 403 forbidden

    http://hbk777.blog.163.com/blog/static/6058086200681594333361/ Delphi Indy IDHttp 403 forbidden 2006 ...

  2. mysqldump - 备份 MySQL 数据库

    参考资料 备份 备份所有数据库中的所有数据(包括系统数据库) –all-databases 通过 --all-databases 选项备份所有的数据库: mysqldump -uroot -p --a ...

  3. crontab自动执行任务,失败原因记录

    服务器上使用crontab部署这两个每分钟自动执行的命令.首先,这两个命令是之前的人部署的,在我接手之前,就一直在了的.根据命令,实际上应该是做到每分钟都执行一次脚本.但是实际操作中,却发现,其实并没 ...

  4. css负边距布局

    三行三列的布局 代码结构 <div class="container"> <ul> <li>1</li> <li>2&l ...

  5. jmeter设置全局变量token

    返回登录后的token使用json path Extractor插件,定位到获取后的token为变量 在登录下后置处理器下添加json path Extracto插件 根据上面获取到的token位置路 ...

  6. python的tesseract库几个重要的命令

    在调用tesseract时,最重要的三个参数是 -l, -oem 和 -psm -l 参数控制识别文本的语言.可以通过命令 tesseract --list-langs  查看已经安装的字库. 支持中 ...

  7. spring-第九篇之高级依赖关系配置

    1.关于配置文件一些使用 组件与组件之间的耦合,采用依赖注入管理:基本类型的成员变量值,应该直接在代码中设置. 2.获取其他bean的属性值 PorpertyPathFactoryBean用来获取目标 ...

  8. [洛谷P3261] [JLOI2015]城池攻占(左偏树)

    不得不说,这道题目是真的难,真不愧它的“省选/NOI-”的紫色大火题!!! 花了我晚自习前半节课看题解,写代码,又花了我半节晚自习调代码,真的心态爆炸.基本上改得和题解完全一样了我才过了这道题!真的烦 ...

  9. Codeforces - 1194B - Yet Another Crosses Problem - 水题

    https://codeforc.es/contest/1194/problem/B 好像也没什么思维,就是一个水题,不过蛮有趣的.意思是找缺黑色最少的行列十字.用O(n)的空间预处理掉一维,然后用O ...

  10. Centos6.5 使用YUM安装MariaDB

    1,第一步 [xxxxxx]$ cd /etc/yum.repos.d [xxxxxx]$ vi MariaDB.repo # MariaDB 10.0 CentOS repository list ...