Javascript

【九月打卡】第3天 前端工程师 Node.js基础

本文主要是介绍【九月打卡】第3天 前端工程师 Node.js基础,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

每天一遍,防止颓废。


课程名称:前端工程师2022
课程章节:Node.js基础入门 2161
讲师:双越
课程j介绍:

本课程重点介绍服务端开发和前端开发思路上的区别,为后续的服务端开发做一个基础的铺垫。


课程内容

  • nodejs是什么?

nodejs是什么?

一个基于chormev8引擎的JavaScript运行时

2009年发布,现已更新v18版本

现已广泛应用于开源社区和各种公司,特别是互联网公司


什么是chormev8引擎?

chorme是一个浏览器,它可以执行js代码

v8就是chorme的js引擎,以速度著称

nodejs也是基于js语法的,因此也可以借用v8引擎


什么是运行时?

代码的运行环境

有了运行时,代码能被执行

没有运行时,代码就是一堆静态文本,就像txt一样


nodejs出现之前

nodejs出现以前,只有浏览器可以和执行js 代码

浏览器主要显示网页,所有js也被当做网页的一部分

除此之外,没有其他应用场景,更别提做服务端


nodejs出现之后

除了浏览器,nodejs又是一个新的js运行时

哪里安装nodejs,哪里就可以运行js代码

可以用本机(如果使用webpack打包),也可以做服务端


如何使用nodejs做服务端?

安装nodejs

编写js代码(处理http请求

使用nodejs执行js代码


  • 下载和安装

下载和安装

https://nodejs.cn 一直下一步,下一步OK


验证是否安安装成功

打开控制台,运行

mac控制台 terminal

Windows控制台cmd

node -v
npm -v

初体验

// 导入http包
const http = require('http')

const server = http.createServer((request, response) => {
    const content = 'Hello Word'
    response.end(content)
})

server.listen(3000)

图片描述

  • 使用npm

npm是什么?

npm软件包管理者(node package manager)

官网:https://npmjs.com

有几百万的软件包,开源免费


软件包有何用?

现代软件工程已经完善且成熟,项目不会从0开始写

必须搭配成熟的工具和框架才能满足需求,否则无人使用

每个成熟的开发语言或环境,都需要成熟的软件包体现


使用npm安装软件包

初始化

npm init -y

安装lodash

npm i lodash --saar

lodash使用测试

const _ = require('lodash');
const arr = [1, 2, 3]
const otherArr = _.concat(arr, 4, 5)

console.log(otherArr);

安装nodemon

修改代码自动重启server

 npm install nodemon --save-dev

–save 和 --save-dev区别

–save 代码中课直接使用

–save-dev 不会到代码中用


查看已安装的包

npm list

安装指定版本

npm install <package>@<version>

卸载包

npm uninstall <package-name>
// --save
npm uninstall -S <package-name>
// --save -dev
npm uninstall -D <package-name>
// 全局
npm uninstall -G <package-name>

  • commonjs模块化

语法介绍

module.exports 导出

require() 引入

语法主要用于nodejs开发


图片描述

导出

function sum(a,b){
	return a+b
}
module.exports = sum

引用

const sum = require('./utils')
const res=sum(10,20)
console.log(res)

图片描述


区别

两者语法不一样

commonjs是执行时引入的,动态的

ES6 Module是打包时引入的,静态的


为什么要用模块化

模块拆分开,便于代码的组织和管理

便于多人开发,各写各的互不干扰

成熟的语言都支持模块化


  • debug

  • nodejs和js区别


两者都使用js语法

前端js使用浏览器提供的WEB API

nodejs使用nodejs API


心得体会

双越老师给我们讲了nodejs的基础知识,以及复习了ES6的模块化,以及Commonjs模块化和ES6的模块的区别,之前学过一点所有基础过得比较快,所以今天的学习就到这里啦

图片描述
图片描述
图片描述

这篇关于【九月打卡】第3天 前端工程师 Node.js基础的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!