美文网首页
十三周学习笔记和总结

十三周学习笔记和总结

作者: 水水壶 | 来源:发表于2018-08-19 12:10 被阅读0次

上周完成了相册上传和展示功能,这周完成了博客的展示、修改、新增和删除功能,我的代码放在 github 上。

博客功能

一、CRUD

crud是指在做计算处理时的增加(Create)、读取查询(Read)、更新(Update)和删除(Delete)几个单词的首字母简写。crud主要被用在描述软件系统中数据库或者持久层的基本操作功能。 —— 《百度百科》

我们在平时浏览网页的时候,任何的操作,都可以归纳 crud 的其中一个,浏览天猫商品这是查询操作,新增收货地址,这是新增操作,等等。

二、json

1. 什么是 json

json是一种文件类型,文件都是以.json 结尾,json 文件的内容和对象字面量很像。

对象字面量 写在花括弧里面,键值对,键可加可不加引号,引号可以是单引号也可以是双引号 { name: 'yml' }

JSON 写在花括弧里,也是键值对,但是它的 键必须都加上引号,键必须加引号且是双引号,值如果是字符串类型也要加双引号 { "name": "yml", "age": 14 }

2. json 与字符串转换

JSON.parse(); 把字符串转换为 json格式,

JSON.parse('{ "name": "yml" }')     将字符串转为json格式
JSON.parse("yml")      如果字符串类型不对,就会报错

JSON.stringify(); 将 json 格式转换为字符串;

JSON.stringify({ name: 'yml' })       将对象转为字符串    =>     '{ "name": "yml" }'
JSON.stringify({ name: 'yml' }, null, 4)    格式化 json 文件

三、fs

博客增删改查数据源,是写在 index.json 文件里,通过 fs 提供的 API 读取文件内容,和写入文件内容。

1. 读取文件内容

 // 将文件内容读到 node 程序中
    const stream = fs.readFileSync(path.join(process.cwd(), 'public/articles/index.json'));
    const str = stream.toString();
    let articles = JSON.parse(str);

使用 fs.readFileSync() 读取到的文件内容是字节流形式,使用 tostring()转换为字符串格式,用 JSON.parse()将字符串转换为 json 格式。

2. 向文件里写内容

// 将 node 程序中的内容写到文件中
    fs.writeFileSync(path.join(process.cwd(), 'public/articles/index.json'), JSON.stringify(articles, null, 4));

四、数组的方法

1. arr.map()

该方法可以循环数组。

var arr = [ 1, 2, 3, 4, 5 ]
arr = arr.map(item => item * item);
console.log(arr);
// [1, 4, 9, 16, 25]

2. arr.filter()

该方法可以过滤数组,表达式为 true 保留,过滤表达式为 false 的项。

var arr = [ 1, 2, 3, 4, 5 ]
arr = arr.filter(item => item > 2)
console.log(arr);
// [3, 4, 5]

3. arr.find()

该方法是寻找数组中的一项。

var arr = [ 1, 2, 3, 4, 5 ]
var item = arr.find(item => item === 2)
console.log(arr);
// 2

五、前后端数据交互

1. req.params

客户端数据通过 url 传输给服务端,参数写在 url 里 /user/13

// 获取客户端传来的数据
var name= req.params.name   //  name=13

2. req.query

客户端数据通过 url 传输给服务端,不过是写在问号后面 /user?name=dreamlin517

// 获取客户端传来的数据
var name= req.query.name   //  name=dreamlin517

3. req.body

通过 form 表单提交的数据是放在 req.body,不过放进去的格式,我们看不懂,需要转换一下,需要使用第三方包 body-parser

const bodyParser = require('body-parser')

//  application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// application/json
app.use(bodyParser.json())

六、ajax

ajax 是 jQuery 里的方法,使用前我们要先引用 jQuery 这个文件。

 $.ajax({
        url: '/article',
        method: 'delete',
        data: { title: title },
        success: function (res) {
            location.href = "/blog";
        }
    });

七、npm 全局安装与本地安装的区别

npm install supervisor -g

加上 -g 就是全局安装,不加就是本地安装。

全局安装一般安装的包都是命令行的,比如:hexo、supervisor,本地安装的包都是功能性的,在 node 程序里通过 require('xxx') 引入才能使用的。

八、 git 提交信息格式

git提交格式

这里 看到的提交规范。

规范

相关文章

  • 十三周学习笔记和总结

    上周完成了相册上传和展示功能,这周完成了博客的展示、修改、新增和删除功能,我的代码放在 github 上。 一、C...

  • 十二周学习笔记和总结

    这周学习 express,写了一个网络相册,可以上传自己的图片并展示,代码放到了我的 github。 一、expr...

  • 学习笔记—周总结

    【优胜行动派️❤学习日记】 [打卡宝宝]:张雪 [打卡日期]:2019/2/17 [累计坚持]:这是我坚持学习的第...

  • 【学习笔记】周总结

    【优胜行动派️❤学习日记】 [打卡宝宝]:张雪 [打卡日期]:2019/1/27 [累计坚持]:这是我坚持学习的第...

  • 学习笔记~周总结

    [打卡宝宝]:张雪 [打卡日期]:2018/12/30 [累计坚持]:这是我坚持学习的第85天 [学习内容]:5分...

  • 第二周学习笔记和总结

    一、 display 和 float 这周具体遇到的都是将块级元素和行内元素转换,具体可以用 dispaly 和 ...

  • 第五周学习笔记和总结

    这周开始学习 js,主要做了下图这么一个效果,初步接触一些js的知识。 一、我写的代码 最终要实现的效果:点击其中...

  • 第九周学习笔记和总结

    首先了解程序运行的简单过程:一个程序会在电脑硬盘上长期储存,当启动程序时会把需要的文件放到内存上然后由内存传输给 ...

  • 第七周学习笔记和总结

    这周主要接触了 Bootstrap 、Node 和 npm、linux 常用命令,也尝试 用 Hexo 搭建了自己...

  • 2018年2月计划

    1. 课程学习,以及总结笔记 《关系课程》学习50节,总结笔记。 《中国史纲》学习50节,总结4篇笔记。 《pyt...

网友评论

      本文标题:十三周学习笔记和总结

      本文链接:https://www.haomeiwen.com/subject/uscciftx.html