摘要: 案列需求 基于MYSQL数据库+Express对外提供用户列表的API接口服务。用到的技术点如下: 第三方的包express和mysql2 ES6模块化 Promise async/await 主要的实现步骤 搭建项目的基本结构 创建基本的服务器 创建db数据库操作模块 创建user_ctrl业务模 阅读全文
posted @ 2022-05-30 10:15 perfect* 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 什么是宏任务和微任务 JavaScript把异步任务又做了进一步的划分,异步任务又分为两类,分别是: 宏任务(macrotask) 异步的Ajax请求 setTimeout、setInterval 文件操作 其它宏任务 微任务(microtask) Promise.then、.catch和final 阅读全文
posted @ 2022-05-30 08:52 perfect* 阅读(20) 评论(0) 推荐(0) 编辑
摘要: JavaScript是单线程的语言 JavaScript是一门单线程的编程语言。也就是说,同一时间只能做一件事情; 单线程执行任务队列的问题: 如果前一个任务非常耗时,则后续任务就不得不一直等待,从而导致程序假死的问题 同步任务和异步任务 为了防止某个耗时任务导致程序假死的问题,JavaScript 阅读全文
posted @ 2022-05-28 17:56 perfect* 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 什么是async/await async/await是ES8引入的新语法,用来简化Promise异步操作。在async/await出现之前,开发者只能通过链式.then()的方式处理Promise异步操作。 .then链式调用的优点: 解决了回调地狱的问题; .then链式调用的缺点: 代码冗余、阅 阅读全文
posted @ 2022-05-24 19:12 perfect* 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 回调地狱 多层回调函数的相互嵌套,就形成了回调地狱 回调地狱的缺点: 代码耦合性太强,牵一发而动全身,难以维护 大量冗余的代码相互嵌套,代码的可读性变差 如何解决回调地狱的问题 为了解决回调地狱的问题,ES6中新增了Promise的概念 Promise的基本概念 Promise是一个构造函数 我们可 阅读全文
posted @ 2022-05-24 16:14 perfect* 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 1、回顾node.js中如何实现模块化? node.js遵循CommonJs的模块化规范 导入其它模块使用require()方法 模块对外共享成员使用module.exports对象 模块化的好处: 大家都遵守同样的模块化规范写代码,降低了沟通的成本,极大方便了各个模块之间的相互调用 2、前端模块化 阅读全文
posted @ 2022-05-19 08:53 perfect* 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 学习来源:https://www.bilibili.com/video/BV1zq4y1p7ga?p=6&spm_id_from=pageDriver 工程化的概念: 实际的前端开发: 模块化(js的模块化、css的模块化、资源的模块化) 组件化 (复用现有的UI结构、样式、行为) 规范化(目录结构 阅读全文
posted @ 2022-05-18 16:39 perfect* 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 一、 两大编程思想 面向过程 优点:性能比面向对象高,适合跟硬件联系很紧密的东西,例如单片机就采用的面向过程编程 缺点:没有面向对象易维护、易复用、易扩展 面向过程编程POP(Process-oriented programming) 面向过程就是分析解决问题所需要的步骤,然后用函数把这些步骤一步一 阅读全文
posted @ 2021-02-21 13:15 perfect* 阅读(112) 评论(1) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-04-28 07:01 perfect* 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 为什么使用数据库 动态数据网站中的数据都是存储在数据库中的 数据库可以用来持久存储客户端通过表单收集的用户信息 数据库软件本身可以对数据进行高效的管理 什么是数据库 数据库即存储数据的仓库,可以将数据进行有序的分门别类的存储。它是独立于语言之外的软件,可以通过API去操作它。 常见的数据库软件有:m 阅读全文
posted @ 2020-03-27 00:07 perfect* 阅读(856) 评论(1) 推荐(0) 编辑
$(function() { $('#cnblogs_post_body img').each(function() { let imgSrc = $(this).attr('src'); let year = parseInt(imgSrc.substr(imgSrc.indexOf('g')+1,4)); if(year >= 2022){ imgSrc += `?watermark/2/text/amlndWl5YW4=/font/5a6L5L2T/fontsize/15/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast`; $(this).attr('src', imgSrc) } }) })