nodejs是一门后端语言。

在浏览器 JavaScript 中,通常 window 是全局对象,而 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。

安装完nodejs后,默认安装包管理工具npm:

npm install -g cnpm --registry=https://registry.npm.taobao.org  使用淘宝镜像的命令
npm root -g 命令会告全局安装包位置;
npm list -g 查看所有全局安装的模块:
npm list packagename 查看某个模块的版本号
npm ls  到 /node_modules/ 目录下查看包
npm update <package>  更新模块
npm search <package>  搜索模块
npm help <command>    看某条命令的详细帮助
npm cache clear       清空NPM本地缓存
npm uninstall <package> -g|S|D|O 卸载删除已安装的包

nodejs命令行解析js文件是加载在内存里,若修改了js文件需从新关闭服务再重启,比较麻烦,此时可以用node的一个管理监控工具nodemon:

yum install nodemon -D

安装完后,即可用命令开启后一直监控而不用重复的结束服务再开启服务:

//node脚本修改后,热启动node服务,用nodemon包来管理
nodemon service.js

npm和yarn的区别,该如何选择?
Yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具 ,正如官方文档中写的,Yarn 是为了弥补 npm 的一些缺陷。

npm 和 Yarn命令对比
npm install                  ==> yarn
npm install react --save     ==> yarn add react
npm uninstall react --save   ==> yarn remove react
npm install react --save-dev ==> yarn add react --dev
npm update --save            ==> yarn upgrade具体怎么选择:
https://www.jianshu.com/p/254794d5e741

当然,还有个npx,怎么用?
npx(node自带或者npm install -g npx)
作用:解决调用项目内部安装的模块问题 。原理很简单,就是运行的时候,会到node_modules/.bin路径和环境变量$PATH里面,检查命令是否存在。

//比如,运行已安装的egg-sequelize 类映射orm node_modules模块
npx sequelize init:config
npx sequelize init:migrations
//推荐看阮老师详细教程
//http://www.ruanyifeng.com/blog/2019/02/npx.html

区别 exports 和 module.exports 的使用

exports :对外暴露属性或方法

module.exports : 暴露对象(类似class,包含了很多属性和方法)。

//exports 暴露方法 router  ==>文件router.js
exports.router = function(){ console.log('router..')}//引用 exports 暴露的方法 router
const router = require('./router')
router.router()//module.exports 暴露class类people  ==>文件people.js
module.exports.people = {name:'xxxxx',
}
//引用 module.exports 暴露class类people
const people = require('./people')
console.log(people.name)

注意一下的路径:

//当前脚本的绝对路径; 如果在模块中,返回的值是模块文件的路径
console.log(__filename)
//当前执行脚本所在的目录
console.log(__dirname)

web框架:express 和 koa2

Express 应用程序生成器
mkdir testapp && cd testapp
1.通过 npx (包含在 Node.js 8.2.0 及更高版本中)
$ npx express-generator
npx: 10 安装成功,用时 1.593 秒warning: the default view engine will not be jade in future releaseswarning: use `--view=jade' or `--help' for additional optionscreate : public\create : public\javascripts\create : public\images\create : public\stylesheets\create : public\stylesheets\style.csscreate : routes\create : routes\index.jscreate : routes\users.jscreate : views\create : views\error.jadecreate : views\index.jadecreate : views\layout.jadecreate : app.jscreate : package.jsoncreate : bin\create : bin\wwwinstall dependencies:$ npm installrun the app:$ DEBUG=app:* npm start2. npm install 拉取模块包
3. MacOS 或 Linux 中,通过如下命令启动此应用:
$ DEBUG=testapp:* npm start
在 Windows 中
> set DEBUG=testapp:* & npm start4.用nodemon自动更新替代node启动app
nodemon ./bin/www5.默认3000端口
在浏览器中打开 http://localhost:3000/
https://www.expressjs.com.cn/starter/generator.htmlkoa2* 注意* 1.在use内的异步函数体内 await next() 调用下一个中间件;* 2.use koa-bodyparser 务必写在 use router之前
https://segmentfault.com/a/1190000018241491
https://www.jianshu.com/p/e0fd2bf0590fkoa2模板引擎ejs ,或 Nunjucks
npm install koa-views
npm install ejs//配置模板引擎中间件
app.use(views('views', {extension: 'ejs'
}));引入静态包管理 koa-static 模块
npm install koa-static//配置静态资源中间件,或写成 app.use(static("./static"))
app.use(static(__dirname + "static"));

重点推荐阿里的egg,是基于koa2扩展,mvc模型,包含了中间件,定时器,和拓展

egg安装
mkdir egg-test  && cd egg-test
npm init egg --type=simple
npm install 或 npm i

nodejs是一门后端语言相关推荐

  1. 前端要不要学习一门后端语言_这是一门免费课程,可帮助前端开发人员学习数学

    前端要不要学习一门后端语言 Are you looking to become a more effective developer by improving your fundamental mat ...

  2. web后端语言_web前端学习路线图_快速入门web前端学习路线图

    如何学好Web前端开发技术?前端学习路线是什么?如今,移动开发的发展依旧如火如荼,企业对于Web前端人才需求产生了巨大的缺口,从事Web前端开发的程序员们则是其中较大的获益者.Web前端的广泛运用,造 ...

  3. node.js是后端语言,前端要学会使用

    虽然说nodejs是运行在服务器的javascript,但是它还是后端服务.身为前端开发大神的你我他,为何要学习这门后端语言.原因如下. 1: 现在前端开发流行框架无非就是angular.vue.re ...

  4. 基于NodeJS的全栈式开发(基于NodeJS的前后端分离)【转】

    随着不同终端(Pad/Mobile/PC)的兴起,对开发人员的要求越来越高,纯浏览器端的响应式已经不能满足用户体验的高要求,我们往往需要针对不同的终端开发定制的版本.为了提升开发效率,前后端分离的需求 ...

  5. RDC如何构建一个基于NodeJS的前后端项目

    摘要: 最近在将公司的持续集成架构做一个系统的调整,调整过程中受到了RDC团队大量的帮助,所以利用国庆时间写了几篇RDC的分享,希望能让更多的人了解和用好RDC这个产品. 我会把我最近3个月的使用体会 ...

  6. 后端语言c,大前端的后端语言

    前端基本 1.ES5 ES6 ES7 2.html5 css3 3.Less 和 Sass 4.SVG Canvas D3.js //图形数据可视化 5.WebGL Three.js 3d场景 6.C ...

  7. java后端框架选型_后端语言选型浅谈

    前不久回答了一个关于后端语言选型的问题,写的回答也让笔者有了很多感触,因此在这里谈论下自己对后端语言选型的心得体会,姑且算是抛砖引玉,希望大家能分享各自的心得. 后端语言发展历史 Web 后端语言的兴 ...

  8. 后端语言除了java_浅谈后端语言优缺点

    浅谈后端语言优缺点 兄弟连教育在前不久,回答了一个关于后端语言选型的问题,那么后端语言都有哪些,存在什么样的优缺点?因此兄弟连与大家分享一下心得. 语言优缺点 C/C++ C 语言虽然是非常贴近操作系 ...

  9. 前端工程师,掌握哪个后端语言好一些?

    作为一名IT从业者,我来回答一下这个问题. 对于前端开发人员来说,要想学习一门后端编程语言,目前有三个比较不错的选择,分别是PHP.Java和Python. 如果想快速掌握一门后端编程语言,而且未来想 ...

最新文章

  1. Java Se:自定义ClassLoader
  2. 2019-11-10 秩和奇异的一些概念
  3. MyBatis——动态SQL讲解
  4. PHP 会话 线程 进程,php进程后台调用(多线程/进程)
  5. 一次面试留下的实际应用问题。关于HttpModule,IIS集成模式。
  6. spring连接mysql出现问题_spring+hibernate连接mysql问题啊
  7. 关于最近很火的“快用苹果助手”和“pp助手”使用正版软件闪退问题的说明
  8. USBCAN分析仪在汽车检测上的应用
  9. android定位欺骗,1020. Android GPS定位欺骗(模拟定位)的3类途径4种方式
  10. 使用VBA通过Excel生产Word报告
  11. 【解决办法】EFI分区扩容/win10更新提示“我们无法更新系统保留的分区”
  12. <2021SC@SDUSC>【Overload游戏引擎】OvCore源码模块分析(三)——GlobalHelpers
  13. 2021-11-26 pyautogui 配合雷电模拟器实现手机APP签到答题自动化
  14. 新库上线 | CnOpenData中国各地区方言信息数据
  15. 设置日语输入法遇到的各种问题
  16. secureCRT命令行字符重叠只显示一半
  17. css clip-path 画五角星
  18. 算法笔记胡凡 第3章 入门篇
  19. webp转换gif动图的方法-批量转换并保留动画效果
  20. Pytorch JIT 使用经验总结

热门文章

  1. Spring Cloud Config的基本使用以及实战 作者:哇塞大嘴好帥(哇塞大嘴好帅)
  2. 服务器上使用ssh登陆另一台服务器
  3. 【YOLOv3 NMS】YOLOv3中的非极大值抑制
  4. Mac电脑安装adb
  5. xdotool模拟击键和鼠标移动
  6. 如何将用户添加到远程桌面用户组
  7. 【树莓派】一根网线将树莓派4B直连笔记本电脑的方法
  8. Ubuntu启动黑屏解决方案
  9. 3601E- TRICONEX数字输出模块3601T- 3603E-3603T- 3604A-3604E模块
  10. jk背带是什么意思_jk裙里面的白色带子是用来干嘛的