Base64 格式的数据是如何实现的

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64哥可打印字符来表示二进制数据的方法。

对于前端来说,一切可以放路径的地方,都可以使用Base64来替代。

node中的buffer对象可以通过toString(‘base64’)将buffer对象输出为base64.我们这里来简述一下汉字转换成Base64的实现原理。

Read More

前端知识梳理之常见手写功能

new

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function myNew(Func, ...args) {
const instance = {};
if (Func.prototype) {
Object.setPrototypeOf(instance, Func.prototype)
}
const res = Func.apply(instance, args)
if (typeof res === "function" || (typeof res === "object" && res !== null)) {
return res
}
return instance
}

// 测试
function Person(name) {
this.name = name
}
Person.prototype.sayName = function() {
console.log(`My name is ${this.name}`)
}
const me = myNew(Person, 'Jack')
me.sayName()
console.log(me)

Read More

前端知识梳理之性能优化

前端缓存

缓存是性能优化中非常重要的一环,浏览器的缓存机制对开发也是非常重要的知识点。接下来以三个部分来把浏览器的缓存机制说清楚:

  • 强缓存

Read More

前端知识梳理之HTTP协议

HTTP 的请求方法

具体有哪些请求方法?

http/1.1规定了以下请求方法(注意,都是大写):

Read More

前端知识梳理之安全篇

什么是 XSS 攻击?

XSS 全称是 Cross Site Scripting(即跨站脚本),为了和 CSS 区分,故叫它XSS。XSS 攻击是指浏览器中执行恶意脚本(无论是跨域还是同域),从而拿到用户的信息并进行操作。

Read More

前端知识梳理之渲染篇

说一说从输入URL到页面呈现发生了什么?——网络篇

构建请求

浏览器会构建请求行:

Read More

前端知识梳理之JS数组篇

JS数组的高阶函数之基础篇

什么是高阶函数

概念非常简单,如下:

Read More

前端知识梳理之JS基础篇

JS数据类型

JS原始数据类型有哪些?引用数据类型有哪些?

在 JS 中,存在着 6 种原始值,分别是:

Read More

前端知识梳理之CSS

元素水平垂直居中

水平居中

    Read More

    前端知识梳理之HTML

    HTML5和HTML4 一些不同之处?

    声明方面

    1
    <!DOCTYPE html>  //HTML5 文件类型声明(<!DOCTYPE>)更简洁

    Read More