IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 2021-09-10 -> 正文阅读

[开发工具]2021-09-10

常见的终端命令

命令及键盘按钮:node 某个js文件调用node程序运行某个js文件 clear 或者 cls清空界面

Ls 或者 dir 查看列表(list)? cd 目录名 进入到目录中去 ????cd .. 返回到上一级目录 ??

Cd \? 直接返回到根目录 ????ctrl + c?? 停止node 程序 ??输入部分文件名后按下 tab 键 补全文件名 或目录名 多次tab会进行切换 ??↑↓箭头 切换输入历史??

常用的 快捷键

Ctrl+A 功能:全部选中当前页面内容? ? ?Ctrl+F 功能:打开“查找”面版? ? ? ?Ctrl+N 功能:新建一个空白窗口(可更改,Maxthon选项→标签→新建)? ??Ctrl+R 功能:刷新当前页面? ?Ctrl+F4 功能:关闭当前标签(窗口)

常见的vscode快捷键

单词选中Shift + Alt + Up/Down? ?打开关闭侧边栏 Ctrl+ d? ?Ctrl+ b? ? ?复制行Ctrl + Shift + d??删除行Ctrl + x? ??跳转到特定行Ctrl + g

总结字符串操作的api?

返回在指定位置的字符:charAt()??返回在指定的位置的字符的 Unicode 编码:charCodeAt()? ?

连接字符串:concat()??提取字符串中两个指定的索引号之间的字符:substring()? ? ?ES新增at()方法可以识别Unicode 编号大于0xFFFF的字符,返回正确的字符。

案例

// 1.读取文件
const fs = require("fs");

const path = require("path");

fs.readFile(path.join(__dirname, "txt.md"), "utf8", (err, data) => {
    if (err) {
        console.log("err", err);
        return;
    }

    // console.log(data.toString());
    // 把字符串 用 \n 分割 分割成数组 
    const arr = data.split("\n"); // 因为 原本的md 文件就有\n 所以 用 \n进行分割
    //  定义空数组
    let bigStr = '';
    arr.forEach((item) => {
        //  startsWith 判断是以什么开头的
        if (item.startsWith("# ")) {
            console.log(item);
            const newStr = "<h1>" + item.replace("# ", "") + "</h1>";
            bigStr += newStr
        } else if (item.startsWith("##")) {
            const newStr = "<h2>" + item.replace("## ", "") + "</h2>";
            bigStr += newStr
        } else if (item.startsWith("###")) {
            const newStr = "<h3>" + item.replace("### ", "") + "</h3>";
            bigStr += newStr
        } else {
            const newStr = "<p>" + item + "</p>";
            bigStr += newStr
        }
    });

    // 写入
    fs.writeFile(path.join(__dirname, "md.html"), bigStr, 'utf8', function(err) {
        if (err) {
            console.log('err', err);
        }
    })
});

文档中的两个作业

01.读入数据,补充内容

const fs = require("fs");
const path = require("path");

fs.readFile(path.join(__dirname, "./data.json"), "utf8", (err, data) => {
    if (err) {
        console.log("err", err);
        return;
    }
    let test1 = JSON.parse(data);
    test1.push({ "name": "小张" });
    let str = JSON.stringify(test1)

    fs.writeFile(path.join(__dirname, "./data.json"), str, 'utf8', (err) => {
        if (err) {
            console.log(err, '添加失败');
        }
    })
});

02.整理数据,将a.txt的内容,转成b.json的内容。

最好的思路

const fs = require('fs')
const path = require('path')


fs.readFile(path.join(__dirname, 'a.txt'), 'utf8', function(err, data) {
    // console.log(data);
    let arr = data.split('\r\n', )


    // let newarr = arr.map(item => {
    //   return item.split(',')
    // });
    // console.log(newarr);


    let newarr = []
    arr.forEach(item => {
        let a = item.split(',')
        newarr.push(a)
    })
    console.log(newarr);
    let arr1 = []
    let sum = 0
    newarr.forEach(item => {
        sum += Number(item[1])
        let obj = {}
        obj["name"] = item[0]
        obj["age"] = +item[1]


        console.log(obj);
        arr1.push(obj)
    })
    console.log(arr1);
    let newobj = {}
    newobj["list"] = arr1
    newobj["average"] = sum / (newarr.length)
    newobj["total"] = newarr.length


    console.log(newobj);
    let a = JSON.stringify(newobj)
    console.log(a);
    fs.writeFile(path.join(__dirname, 'b.json'), a, function(err) {
        console.log(err);
    })
})

稍又一点BUG

const fs = require("fs");
const path = require("path");

let obj = {};
let allname = [];
let allage = [];

fs.readFile("./01.txt", "utf8", (err, data) => {
    if (err) {
        console.log("err", err);
        return;
    }
    let arr3 = [];
    // 将哪来的数据切换 并转化数组
    let arr = data.split("\r\n");

    arr.forEach((item) => {
        // 将数组都循环出来
        item.split(",").forEach((item) => {
            // 把里面的 逗号拿掉 在建立数组 再次循环
            arr3.push(item); // 再将选循环出来的东西再装进新的数组
        });
    });

    arr3.forEach((item) => {
        console.log(item);
        // console.log(Number(item).toString());
        // 将  name  和 age 分割出来
        // console.log(Number(item).toString());
        if (Number(item).toString().length > 2) {
            // console.log(Number(item).toString());
            // console.log(item);
            allname.push(item);
        } else {
            // console.log(item);
            allage.push(item);
        }
    });

    let allage1 = [];
    allage.forEach((item) => {
        allage1.push(Number(item));
        // console.log(Number(item));
    });
    let total = allname.length;
    let sum = 0;
    for (let i = 0; i < allage1.length; i++) {
        sum += allage1[i];
    }
    let average = sum / allname.length;
    let list = [];
    for (let i = 0; i < allname.length; i++) {
        list.push({ name: allname[i], age: allage1[i] });
    }
    obj.list = list;
    obj.average = average;
    obj.total = total;
    console.log(obj);
    fs.writeFile(path.join(__dirname + "/b.json"), JSON.stringify(obj), (err) => {
        console.log("err", err);
    });
});

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-09-11 19:01:24  更:2021-09-11 19:02:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/23 4:39:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计