5.1.1 描述:

/* 描述:如果persons中没有对应的用户,则把user写入到persons.json中,提示注册成功并且不能修改原来的数据结构如果有对应的用户名,则提示用户名已经被占用
*/

5.1.2 persons.json文件

[{"username":"xm1","password":"1234"},{"username":"xm2","password":"222"},{"username":"xm3","password":"333"}]

5.1.3 node文件

1)引入文件模块

let fs = require("fs");

2)需要写入的数据

let user = {username: "admin1",password: "12345"
}

3)创建实现注册功能的函数(推荐使用findIndex()方法)

function doRegister() {// 读取peersons.jsan文件,存储在data中let data = fs.readFileSync("./persons.json");// 将读取到的字符串转成JSON对象的格式,存储在arr中let arr = JSON.parse(data.toString());// 遍历读取到的数据// 方法一:使用findIndex()方法,如果账户不存在,返回-1/*    let tag = arr.findIndex((item) => {return item.username == user.username && item.password == user.password;});if (tag == -1) {// 将新数据添加进数组中arr.push(user);// 将数组转成字符串格式,写入persons.json中fs.writeFileSync("./persons.json", JSON.stringify(arr));console.log("注册成功");} else {console.log("用户名已经被占用");} *///    方法二:for循环遍历let tag = false; //定义标记  false-->账户不存在,true-->账户存在for (let item of arr) {//如果账户已经存在if (item.username == user.username && item.password == user.password) {// 更新标记tag = true;console.log("账号已存在");}}// 账户不存在if (tag == false) {// 将新数据添加进数组中arr.push(user);// 将数组转成字符串格式,写入persons.json中fs.writeFileSync("./persons.json", JSON.stringify(arr));console.log("注册成功");}
}

4)调用注册函数

doRegister();

5)运行方式:

vscode-->在集成终端中打开  -->使用node命令运行.js文件

5.1 node实现简单注册功能(往json文件中写入数据)相关推荐

  1. 5.2 node实现简单登录功能

    5.2.1 描述: /* 描述:如果persons.json中含有对应的用户名和密码则提示登录成功,否则提示用户名和密码错误*/ 5.2.2 node文件 1)引入文件模块 let fs = requ ...

  2. 有没有办法为Node.js项目自动构建package.json文件

    本文翻译自:Is there a way to automatically build the package.json file for Node.js projects Is package.js ...

  3. 用python写一个简单的爬虫保存在json文件中

    学习python没多久,所以只能写一个很简单的爬虫啦~~ 我使用annacada 自带的spyder来写爬虫的,这次我们要爬取得网站是http://www.drugbank.ca/drugs, 主要是 ...

  4. springboot 实现简单注册功能(附带源码)

    springboot 简单实现注册功能 要用到的工具(我个人使用的):IDEA, Navicat for mysql, XAMPP启动本地mysql服务. 后端代码: 创建User实体类 packag ...

  5. JSP向数据库插入数据(简单注册功能)

    这篇博客为大家讲述,如何从jsp页面中注册一个账号,并插入到数据库. 首先在school数据库下建立user表,字段如下: 然后,创建web项目,搭建环境如下: 然后就开始我们的代码了. 1.首先把B ...

  6. 换肤的css,换肤功能,css文件中准备三套颜色

    1.知识点 1.document.documentElement // 获取html的方法(document.documentElement) // document.documentElement是 ...

  7. node --- 监听路由,读取json文件,向MongoDB中写入数据

    开始 假设读取的文件为newGoods.json 假设数据的在MongoDB数据库中,集合的规则是Goods 下面将用到 koa-router:监听路由,并调用指定的函数 mongoose:node中 ...

  8. linux c之管道的介绍、创建关闭和简单读写(父进程向子进程写入数据)

    1.管道介绍. 进程间通信的几种主要手段中.其中管道和有名管道是最早的进程间通信机制之一,管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具 有管道所具有的功能外,它还允 ...

  9. 基础功能2-python修改文件中所有文件名

    将policeImage中的所有图片命名为000001.jpg,000002.jpg等形式 import os path = 'F:/vocDataset/policeImage' files = o ...

最新文章

  1. css float 的使用
  2. ThinkPHP 中M方法和D方法的具体区别
  3. 【系统架构师修炼之道】(13):操作系统基础知识——进程基础知识
  4. 电脑护眼设置:蓝色光波过滤
  5. ubuntu安装与配置mysql_ubuntu下mysql的安装与配置
  6. 解决express video 手机无法播放的问题
  7. python怎么加图片_python中如何保存图片
  8. spring 使用XML配置开发Spring AOP
  9. UC伯克利造出会「轻功」的机器人,飞檐走壁,一条腿跳遍天下|湾区人工智能...
  10. BeyondCompared4提示“缺少评估信息或损坏” 一条命令解决
  11. 第二阶段--个人冲刺--第七天
  12. java中多线程重要吗_Java基础知识_多线程必要知识点
  13. 金蝶kis商贸采购单商品代码_金蝶KIS云商贸版(采购模块)常见问题汇总
  14. php邮件发送可以发送图片吗,phpmailer发送图片
  15. 圣杯布局原来这么简单!!
  16. 使用useState因异步导致数据不能及时更新的问题
  17. C++:全排列函数next_permutation()和prev_permutation()
  18. 喜报丨IPLOOK与北京邮电大学5G网络安全联合实验室正式挂牌
  19. PMP项目管理-[第十二章]采购管理
  20. HBuilder X这个开发工具我写完代码后,我让他在浏览器运行,就是不显示出来,大佬们求解答,内置配置浏览器是这样的。求解答拜托.

热门文章

  1. css 平移到某个位置_Html基本的动画效果(平移,旋转)
  2. AI顶会ACL发榜,腾讯30篇论文入选
  3. 邀请码 java_java 生成邀请码
  4. 公博评级编号1开头代表什么_公博评级的XF,MS,AU都是啥意思
  5. 前端学习笔记2——错误解决,接口,echart
  6. linux局域网共享目录软链接,网上邻居:LinuxMint局域网SAMBA共享如此简单
  7. c语言延空指令,单片机C言语编程空指令发作短延时怎么办
  8. 头戴式耳机的麦克风在哪里
  9. Python拆开嵌套列表元组
  10. Echarts tooltip 自定义 css 样式 带小三角的背景样式