• 除了使用自己写的本地模块以外,NodeJS可以使用另外两种类型的模块,分别是NodeJS官方提供的核心模块第三方提供的模块

NodeJS官方提供的核心模块

NodeJS平台自带的一套基本的功能模块,也被称为NodeJS平台的API

// 使用模块全局的 require() 方法引入 fs 模块
const fs = require('fs') // 使用 fs 模块导出的 readFile() 方法读取 data.json 文件中的内容
fs.readFile('./data.json', {encoding: 'utf8', flag: 'r'}, (err, data) => {})
  • .readFire( )方法读取 data.json 文件中的内容,
  • './data.json' 是要读取的文件,
  • encoding: 'utf8',是字符编码,
  • flag: 'r',是读取的方式,
  •  读取成功时,err 为 null,data 为读取到的数据
     读取失败时,err 为错误对象,data 为 undefined
  • (err, data),err是检查文件是否存在,如果不存在打印undifined,并终止进程运行,
  • data是文件存在并继续访问的数据,

使用fs.writeFile()方法给data文件里传数据(‘写’文件要在‘读’文件里追加)
 const fs = require('fs');

 fs.readFile('data.json', { encoding: 'utf8', flag: 'r' }, (err, data) => {

     // 给data文件里传值

     // 将json格式的字符串转换成js对象(array,object)
data = JSON.parse(data)
console.log(typeof data); //string
console.log(data instanceof Array) //true
// 写内容
const student = {
fullNmae: 'zzj',
age: 18,
hobby: '学习',
gender: '女'
}
// 向data里面追加student
data.push(student);
// 将js对象转换成json对象
JSON.stringify(data)
// 使用fs.writeFile()方法给data文件里传数据
fs.writeFile('data.json',JSON.stringify(data ,null,4), (err) => {
if (err) {
console.log('失败')
return;
}
console.log('成功')
})
})
JSON.stringify(data ,null,4)  
null:表示函数,不需要函数则写null,
4:表示4个字符间距(效果如下图)

os操作系统

 const os = require('os')
console.log(os.freemem()/1024/1024/1024)
// 获取家目录
console.log(os.homedir())
// 获取CPU架构
console.log(os.arch())
// 获取几核
console.log(os.cpus())

使用NodeJS模块-NodeJS官方提供的核心模块的更多相关文章

  1. Nginx模块参考手册:HTTP核心模块

    FROM: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697 这些模块默认会全部编 ...

  2. drupal7 的核心模块

    核心模块 Drupal 7 block Block(区块)模块提供了与区块相关的功能,通过区块可将内容放置在网站不同区域.Block模块是Drupal的基础模块之一,不能被禁用.它是通过单独的区块管理 ...

  3. core核心模块

    5. core核心模块 核心模块会通过compiler模块提供的调用compiler的功能, 将用户的输入转为VM直接的输入 编译模块用来编译, 而核心模块用来执行 在core.h文件中 // 不需要 ...

  4. Linux学习-额外(单一)核心模块编译

    编译前注意事项 由于我们的核心原本就有提供很多的核心工具给硬件开发商来使用, 而硬件开发商也需要针对核心 所提供的功能来设计他们的驱动程序模块,因此, 我们如果想要自行使用硬件开发商所提供的模块 来进 ...

  5. 模块机制 之commonJs、node模块 、AMD、CMD

    在其他高级语言中,都有模块中这个概念,比如java的类文件,PHP有include何require机制,JS一开始就没有模块这个概念,起初,js通过<script>标签引入代码的方式显得杂 ...

  6. Nodejs核心模块

    (1)全局对象 在浏览器JS中,通常window是全局对象,而nodejs中的全局对象是global,所有全局变量都是global对象的属性. 在nodejs中能够直接访问到的对象通常都是global ...

  7. Nodejs进阶:核心模块Buffer常用API使用总结

    本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 模块概览 Buffer是node的核心模块,开发者可以利用它来处 ...

  8. Nodejs进阶:核心模块net入门与实例讲解

    模块概览 net模块是同样是nodejs的核心模块.在http模块概览里提到,http.Server继承了net.Server,此外,http客户端与http服务端的通信均依赖于socket(net. ...

  9. Nodejs之express第三方核心模块的中间件——body-parser

    Node中的核心模块分两类:一类是自带的核心模块,如http.tcp等,第二类是第三方核心模块,express就是与http对应的第三方核心模块,用于处理http请求.express在3.0版本中自带 ...

随机推荐

  1. php使用微信登录

    1.第一步 $hosturl = urlencode('');//异步回调地址 $wechatInfo = WechatInfo::get_wechat(); //查询appid $url = &qu ...

  2. oop面向对象【类与对象、封装、构造方法】

    今日内容 1.面向对象 2.类与对象 3.三大特征——封装 4.构造方法 教学目标 1.能够理解面向对象的思想 2.能够明确类与对象关系 3.能够掌握类的定义格式 4.能够掌握创建对象格式,并访问类中 ...

  3. styled-components:解决react的css无法作为组件私有样式的问题

    react中的css在一个文件中导入,是全局的,对其他组件标签都会有影响. 使用styled-components第三方模块来解决,并且styled-components还可以将标签和样式写到一起,作 ...

  4. JavaScript-----15.简单数据类型和复杂数据类型

    1. 简单数据类型和复杂数据类型 简单数据类型又叫做基本数据类型或者值类型,复杂类型又叫做引用类型 值类型:在存储时变量中存储的是值本身:string number Boolean undefined ...

  5. redlock算法及其问题

    背景 redlock算法是为了解决什么问题呢? 在单redis实例实现分布式锁时,可能会出现线程A设置完锁后,master挂掉,slave提升为master,因为异步复制的特性,线程A设置的锁丢失了, ...

  6. Android组件体系之ContentProvider使用注意事项

    1.数据访问机制 客户端/调用者通过getContentResolver调用,由ActivityThread.AMS获取到ContentProvider的代理,再通过这个代理对象调用服务端的实现(也即 ...

  7. MFC程序出现uafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)解决办法

    在同一个地方摔倒两次之后,决定记录下来这个东西. 问题 1>uafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl opera ...

  8. MongoDB(四):数据类型、插入文档、查询文档

    1. 数据类型 MongoDB支持许多数据类型. 字符串 - 这是用于存储数据的最常用的数据类型.MongoDB中的字符串必须为UTF-8. 整型 - 此类型用于存储数值. 整数可以是32位或64位, ...

  9. Tesseract.js 一个几乎能识别出图片中所有语言的JS库

    Tesseract.js 一个几乎能识别出图片中所有语言的JS库. 官网:http://tesseract.projectnaptha.com/ git:https://github.com/napt ...

  10. 分析Android APK-砸壳-Fdex2

    砸壳的工具千千万,但是FDex2 是最有能耐的,我尝试过各种壳,都是秒砸的.特别说明一下,360的壳,oncreated 方法还是空的,但是其他大部分内容还是有的,反正是可以参考一下的. 安装环境: ...