这是我参与8月更文挑战的第16天,活动详情查看:8月更文挑战
🎉 前言
- 记得我第一次接触学习
node的时候还是跟着菜鸟教程一个个学起来,时间过得也挺久了,平时如果没有怎么使用的话也会慢慢淡忘些许😅。 - 当时学的时候就感觉有点迷茫,不知道学来干嘛🤯,有些公司很少需要你会
node甚至不用,我相信有挺多入门选手也是这样的想法的🤧,带着这个想法我想重新学习一下node,并站在学习者的角度感同身受的分享一下这个够用指北系列,希望对大家有所帮助😆。 - 相信大家想学习
node也是为了能够自己写点数据展示一下,实现一下增删查改,本系列为了照顾新手同学会讲的比较基础,目的就是为了满足前端node的够用目标。 - 本文主要分享的是
node的安装与模块系统,全文大概2000+字,阅读可能需要十分钟。具体的指北向导放在文章最下方,会持续更新喔,欢迎点赞收藏❤️❤️~
👻 关于NodeJS
Node.js 是一个基于 Chrome V8 引擎的 Javascript 运行环境
- 在我们平时开发中,大部分的
Web项目,前端都是使用JS编写的,而后端都是由服务端语言写的,比如JAVAPHPGO,但是因为Node的诞生,让前端开发者也可以使用JS来编写服务器代码,所以Node的诞生可谓是让前端大放异彩,前端后端两开花。 - 特别是
Node提供了开发环境运行的基础,像我们平常经常使用的VueReact这样的前端框架变得非常强大,可以说是前端必不可少的一个基础设备。 Node使用的人多了,我们前端使用JS贡献开源的人也逐渐变多,npm库就成了一个很大很大的代码仓库,在npm这个包管理系统中,我们可以在里面找到我们所需要的插件、轮子,我们直接拿来使用美滋滋,这样也给我们开发者省了很多宝贵的时间。- 关于更多
NodeJS的介绍和作用在这篇文章已经介绍的很清楚了,大家有兴趣可以去看看传送门。
👻 NodeJS安装
NodeJS我们可以到他的官方网站进行下载。- 选择自己合适的版本进行下载,由于我电脑已经安装过了就不再演示了,只要打开安装程序一路下一步就可以了,具体想看更详细的安装指南和全局配置指南可以看到这篇:Node.js安装及环境配置之Windows篇
- 安装完之后我们需要检查一下是否安装成功可以打开终端输入
node -v。
- 可以看到我们已经安装了最新版
16.6.1的node。
👻 NodeJS使用
- 我们在安装完
node后可以在终端键入node进入交互模式,并输入一条我们程序员必备代码hello world。 - 当然我们也可以建一个
JS文件来执行。
echo test>helloWorld.js
/* helloWorld.js */
console.log('你好世界!!!')
- 我们只需要键入
node+文件名即可执行这个文件。
👻 NodeJS模块
Node应用由模块组成,采用的CommonJS模块规范。每一个文件就是一个模块,拥有自己独立的作用域,变量,以及函数等,对其他的模块都不可见,而文件路径就是模块名,所以我们需要了解不同模块之间是怎么交互怎么互相使用的。- 模块可以多次加载,但是只会在第一次加载时运行一次,模块加载的顺序,按照其在代码中出现的顺序。
- 在编写每个模块时,都有
require、exports、module三个预先定义好的变量可供使用。
🍬 加载(require)
require意为需要的,也就是说我们可以通过require来引入我们需要的模块,
let x=require('./hello')
let y=require('./hello.js')
- 我们可以这样引入一个模块,
require后面可以接收一个地址,可以是绝对路径也可以是相对路径。 - 值得注意的是,我们的后缀
.js扩展名可以省略不写。
🍬 导出(exports)
exports意为导出,也有一种说法是暴露,我们一般可以使用exports用于导出模块公有函数和属性。
/* hiNode.js */
exports.addIce=function(){
console.log('我在加冰')
}
- 我们在
hiNode.js文件中暴露了一个函数addIce,这样我们可以在别的地方require这个模块并使用该函数。
/* helloWorld.js */
let x=require('./hiNode')
x.addIce()
- 我们在终端键入
node helloWorld.js。
- 成功引入了模块并使用函数。
🍬 模块对象(module)
- 在
Node中我们通过module可以访问到当前模块的一些信息。
/* hiNode.js */
exports.addIce=function(){
console.log('我在加冰')
}
console.log(module)
- 可以看到我们打印的
module里面有它导出的函数,文件名,路径等信息。实际上当我们require一个模块的时候,它读取的就是该文件的module.exports变量。 - 这个
module.exports变量一般是对象的形式如上图,所以我们经常最常用到module是为了改写module.exports变量这个导出变量,我们可以改成函数形式。
/* hiNode.js */
module.exports=function(){
console.log('直接可以调用,我是一个函数')
}
/* helloWorld.js */
let x=require('./hiNode')
x()
- 如上我们直接可以使用
x是因为require了一个函数,模块默认导出对象被替换为一个函数。
👋 写在最后
- 总的来说
NodeJS应用是由模块组成的,我们可以在js文件导出exports函数等变量,在另一个js文件进行导入require这个模块。 - 本文作为够用指北的开篇就到这里结束了,为了照顾新人讲的特别基础,请大佬们见谅哈~~
- 如果您觉得这篇文章有帮助到您的的话不妨🍉关注+点赞+收藏+评论+转发🍉支持一下哟~~😛
🌅 指北向导
「从零开始」前端node够用指北(四)⚡---Express框架
「从零开始」前端node够用指北(五)⚡---连接数据库
「从零开始」前端node够用指北(六)⚡---实战之数据大屏