博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
node基础
阅读量:6249 次
发布时间:2019-06-22

本文共 1603 字,大约阅读时间需要 5 分钟。

node是一个运行的平台,支持JS语言,可以写后台的服务。

node的特点:基于win8引擎渲染,渲染速度快,效率高,性能好。

                       基于事件驱动的I/O(输入/输出)操作

                       单线程的,所以基本是异步的操作    

                      遵循CommaonJS规范,提供模块机制,包管理(通过npm命令安装包(第三方模块)),模块的导入导出,内置模块(http,fs,url,path......)

                      每一个文件就是一个模块

推荐两本书:node深入浅出 node权威指南

运行node文件:右键 run a.js

                          命令行运行 node a.js(前提:进入a.js所在目录)

node 进入REPLl环境,相当于浏览器的控制台  ctrl+c退出

模块之间的导出和引入

Module.exports = { }     一次性全部导出

exports.xxx = xxx   一个一个导出

模块只有导出后,其他模块才能用这个模块中封装的功能

模块的引入:

若想使用其他模块的内容  先通过require引入进来,a相当于a模块导出的对象

let a = require("./a");      //js,json文件后缀可不写

 

let sum = (...arg)=>{    return eval(arg.join('+'));}let fn = (a,b)=>{    return Math.sqrt(Math.pow(a,2) + Math.pow(b,2));}module.exports = {    sum,    fn}
a.js
/*拿到的是对象*/let a = require('./a');console.log(a.sum(1, 2, 3));console.log(a.fn(3, 4));/*对象解构赋值*/let {sum,fn} = require('./a');console.log(sum(10, 10, 10));console.log(fn(3, 4));
b.js

node模块分类:

node内置模块:

http,fs,url,path,queryString......不需要安装 直接使用 

直接通过require(‘http’)引入内置模块,不需要安装

 

项目初始化:

告诉别人项目的相关(例如:名称 版本 入口文件 按照的第三方模块等) npm init  初始化package.js文件

一键生成 npm init -y

安装第三方模块:别人封装好的插件和库 放在npm平台

                             npm install 包名 安装到本地

                             npm install jquery 表示安装生产环境(项目上线时)所需要的包     dependencies

                             npm install less -D 表示安装开发环境所需要的包   devDependencies

使用第三方模块:let $ = require('mime');

从线上弄下的项目,是没有安装的第三方模块,但是package.js里会记录之前安装的模块===>npm install跑环境(安装package.js里所需要的模块)

模块查找机制:(node_modules)

全局下安装目录 npm install less -g

全局下安装的会设计到包版本冲突的问题,所以尽量少安装在全局下

安装在全局下是适合命令操作的,而不是引入操作   例如less

通过命令操作的包,本地找不到会去全局查找

全局下直接找到lessc index.less

安装在本地 需要再通过本地通过命令行配置使用 “build”:"lessc index.less"   npm run build

 

自定义模块

是自己创建的js文件,引入时需要加'./'或者'../'.      不会往上级查找,当前目录找不到则会报错

转载于:https://www.cnblogs.com/Lia-633/p/9857927.html

你可能感兴趣的文章
何为SLAM
查看>>
[工具]infolite-chrome插件css插件
查看>>
javascript 深拷贝
查看>>
【代码小记】无
查看>>
【知识点】Java机密
查看>>
BarTender 2016表单中的“秤显示”控件
查看>>
全面理解javascript的caller,callee,call,apply概念[转载]
查看>>
Jquery 下拉框取值
查看>>
IDEA中使用Maven创建Java Web项目
查看>>
2017.12.25
查看>>
react--1.创建项目
查看>>
11月20日学习内容整理:jquery插件
查看>>
预科班第四次考核总结
查看>>
html
查看>>
数据分析师到底在做什么?
查看>>
pt-heartbeat工具监控MySQL复制延迟
查看>>
指尖下的js —— 多触式web前端开发之三:处理复杂手势(转)
查看>>
spring boot项目配置文件集合
查看>>
cube-ui的用法
查看>>
2015.4.21 SetWindowPos函数用法
查看>>