node.js学习(1)

模块化开发

它能解决JavaScript的弊端,JavaScript在使用的时候存在两大问题,文件依赖和命名冲突

文件依赖举例来说,你想要引用一个js文件,但发现没效果,一顿分析后发现,这个js文件又引了另一个js文件,以此继续套娃。过程太繁琐了,会有想辞职的冲动!

命名冲突会导致代码覆盖的问题。、

模块化开发中一个功能就是一个模块,多个模块可以组成完整的应用,抽离一个模块不会影响其他功能运行。

模块化开发规范

Node.js规定一个JavaScript文件就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到。

模块内部可以使用exports对象进行成员导出,使用require方法导入其他模块。

举个加法的例子:

创建一个A模块(a.js)

这里先定义了一个加法,通过exports.属性名=属性值 进行导出

const add =(a,b)=>a+b;
exports.add=add; 

创建B模块(b.js)用require方法对依赖模块进行导入,tips:这里文件后缀是可以省略的

const a=require('./a')
console.log(a.add(10,20));

导出还有另一种方式

//a.js
const app = fuck => `Hello ${fuck}`;//此处看不懂就去学es6,`${xxx}`是模板字符串
module.exports.app=app
const app=require('./a');

console.log(app.app('dongson'));
//b.js

exports和module.exports看似没有区别但实际上module.exports是可以重新赋值而exports不能重新赋值,此时输出会变成{name:'HandsomeRider},exports和module.exports指向不同对象,无论如何都以module.exports为准。

const app = fuck => `Hello ${fuck}`;
module.exports.app={
  name:'HandsomeRider!'
}

系统模块

系统模块就是Node运行环境提供的API,因为这些API都是以模块化的方式进行开发的,也可称Node运行环境提供的API为系统模块

系统模块fs文件操作

f:file文件,s:system系统,文件操作系统

引用方式

const fs =require('fs')

读取文件内容

fs.readFile('文件路径/名称‘,‘文件编码’,(callback)={}

示例

const fs=require('fs');
fs.readFile('./input.txt','utf8',(err,doc)=>{
  if(err==null){ 
    console.log(doc);
  }
})

写入文件内容

fs.writeFile('文件路径/文件名称','数据',callback);

fs.writeFi
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值