- 博客(11)
- 收藏
- 关注
原创 最新ES6提案
一、do 表达式本质上,块级作用域是一个语句,将多个操作封装在一起,没有返回值。{ let t = f(); t = t * t + 1;}上面代码中,块级作用域将两个语句封装在一起。但是,在块级作用域以外,没有办法得到t的值,因为块级作用域不返回值,除非t是全局变量。现在有一个提案,使得块级作用域可以变为表达式,也就是说可以返回值,办法就是在块级作用域之前加上do,使它变为do表达式,然后就会返回内部最后执行的表达式的值。let x = do { let t = f(); t
2022-02-20 17:18:07 179
原创 手写Promise
Promise A+规范Promise本质是一个状态机,且状态只能为以下三种:Pending(等待态)、Fulfilled(执行态)、Rejected(拒绝态),状态的变更是单向的,只能从Pending -> Fulfilled 或 Pending -> Rejected,状态变更不可逆。then方法接收两个可选参数,分别对应状态改变时触发的回调。then方法返回一个promise。then 方法可以被同一个 promise 调用多次。我们思考一下如何实现这种链式调用:显然.then()
2022-02-20 16:07:02 156
原创 HTTP和HTTPS协议简单教学
一、概念HTTP:超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。设计 HTTP 最初的目的是为了提供一种发布和接收 HTML 页面的方法。它可以使浏览器更加高效。HTTP 协议是以明文方式发送信息的,如果黑客截取了 Web 浏览器和服务器之间的传输报文,就可以直接获得其中的信息。HTTPS:HTTP 一般是明文传输,很容易被攻击者窃取重要信息,鉴于此,HTTPS 应运而生。HTTPS 的全称为 (Hyper Text Transf
2022-02-07 18:11:16 1464
原创 前端应该掌握的浏览器知识
一、浏览器的主要功能浏览器的主要功能就是向服务器发出请求,在浏览器窗口中展示您想要访问的网络资源。这里所说的资源一般是指 HTML 文档,也可以是 PDF、图片或其他的类型。资源的位置由用户使用 URI(统一资源标示符)指定。二、浏览器的主要结构用户界面 - 包括地址栏、前进/后退按钮、书签菜单等。除了浏览器主窗口显示的你请求的页面外,其他显示的各个部分都属于用户界面。浏览器引擎 - 在用户界面和渲染引擎之间传送指令。渲染引擎 - 负责显示请求的内容。如果请求的内容是 HTML,它就负责解析 H
2022-02-07 10:14:38 817
原创 JS的继承方式
一、原型链继承原型链继承的关键在于把new Parent()赋值给Child.prototype,也就意味着在访问child对象的属性时,如果在child上找不到,就会去Child.prototype去找,如果还找不到,就会去Parent.prototype中去找,从而实现了继承。function Parent(name,age){ this.name = name; this.age = age; this.arr = [1,2]; this.nihao = function(){
2022-01-30 16:39:16 690
原创 前端工程化教学
一、什么是工程化?前端工程化是使用软件工程的方法来解决前端的开发流程中模块化、组件化、规范化和自动化的问题,其主要目的为了提高效率和降低成本。二、前端工程化的特点模块化模块化只是在文件层面上,对代码或资源的拆分。组件化而组件化是在设计层面上,对UI(用户界面)的拆分。规范化目录结构的制定编码规范前后端接口规范文档规范组件管理Git分支管理Commit描述规范视觉图标规范自动化自动化测试持续集成自动化构建自动化部署三、如何实现工程化?1、制定规范在工程开发
2022-01-16 18:42:23 398
原创 TS 入门教学
一、什么是TypeScript?Typed JavaScript 是添加了类型系统的 JavaScript,适用于任何规模的项目。二、TS基础1、原始数据类型JavaScript 的类型分为两种:原始数据类型和对象类型。原始数据类型包括:布尔值、数值、字符串、null、undefined 以及 ES6 中的新类型 Symbol 和 ES10 中的新类型 BigInt。布尔值在 TypeScript 中,使用 boolean 定义布尔值类型:let isDone: boolean = fals
2022-01-09 15:10:09 4599
原创 JS BOM详解
一、什么是BOM?BOM:Browser Object Model 是浏览器对象模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构,BOM由多个对象构成,其中代表浏览器窗口的window对象是BOM的顶层对象,其他对象都是该对象的子对象。二、BOM对象1、window对象window 对象,是 JS 的最顶层对象,其他的 BOM 对象都是 window 对象的属性。常用属性:closed:返回窗口是否已被关闭。defaultStatus:设置或返回窗口状态栏中的默认文
2022-01-03 11:08:36 1007
原创 JS模块化详解
一、什么是模块化? 将一个复杂的程序依照一定的规则封装成几个文件, 并进行组合在一起。每个模块的内部数据是私有的, 只是向外部暴露一些接口(方法)与外部其它模块通信。二、模块化的优点避免命名空间的冲突(减少命名空间的污染)更好的分离,实现按需加载提高可代码的复用性提高了代码的维护性三、模块化进程四、模块化规范1、CommonJS暴露模块:module.exports = value或exports.xxx = value引入模块:require(xxx),如果是第
2021-12-29 20:14:52 3235
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人