常见的终端命令
命令及键盘按钮: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);
});
});
|