自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 JavaScript:垃圾回收

JavaScript 是使用垃圾回收的语言。由执行环境负责在代码执行时管理内存。垃圾回收指的是使用垃圾回收程序来实现自动的内存管理,即实现自动的内存分配和闲置资源的回收。垃圾回收的基本思路:确定某个变量不会再被使用后,就释放该变量占用的内存。垃圾回收是周期性的,即垃圾回收程序每隔一段时间(或者说在代码执行过程中某个预定的收集时间)就会运行一次。垃圾回收的过程是一个近似的、不完美的方案,因为某块内存是否还会被使用,属于“不可判定”的问题,这意味着靠算法是解决不了的。

2022-10-28 17:29:32 355 1

原创 JavaScript:解构赋值

定义一个类需要使用关键字 class。定义类的方式有两种:类声明类声明,即使用关键字 class 定义一个具名的类。类表达式类表达式,即以表达式的形式使用关键字 class 定义一个类,类名是可选的。类名一般采用首字母大写的形式。定义类。} // 类声明 const TypeB = class {} // 类表达式,不指定类名 const Type = class TypeC {} // 类表达式,指定类名。

2022-10-28 17:28:30 132

原创 JavaScript:类

定义一个类需要使用关键字 class。定义类的方式有两种:类声明类声明,即使用关键字 class 定义一个具名的类。类表达式类表达式,即以表达式的形式使用关键字 class 定义一个类,类名是可选的。类名一般采用首字母大写的形式。定义类。} // 类声明 const TypeB = class {} // 类表达式,不指定类名 const Type = class TypeC {} // 类表达式,指定类名。

2022-10-28 17:24:04 335

原创 JavaScript:继承

继承是面向对象编程中被频繁讨论的话题,很多面向对象语言都支持两种继承:dfdggECMAScript 不支持接口继承,因为 ECMAScript 的函数没有签名。ECMAScript 只支持实现继承,主要是通过原型链实现的。ECMAScript 的继承的基础是原型模式。ECMAScript 在原型机制的基础上,模拟传统面向对象编程语言中的继承的行为,由此发展出多种不同程度的继承方式。

2022-10-28 17:23:11 392

原创 JavaScript:原型模式

ECMAScript 使用原型模式来实现多个对象共享某个对象的所有属性的操作。当创建一个函数对象时,会为函数对象创建一个属性 prototype 引用一个对象,被称为原型对象,而原型对象会有一个属性 constructor 引用该函数对象,即函数和原型之间相互引用,形成循环引用。对象拥有一个内部特性 [[Prototype]] ,是一个指针,指向某个原型对象。原型的属性可以直接通过相匹配的对象被访问。

2022-10-28 17:22:29 141

原创 JavaScript:对象

ECMAScript 提供一些 API 来动态定义对象的属性。用于描述属性的、属性的内部特性,被称为描述符。

2022-10-28 17:21:22 365

原创 JavaScript:函数

函数声明函数表达式箭头函数立即调用函数表达式new Function() (不推荐使用)命名函数(使用函数声明定义)匿名函数(使用函数表达式定义)箭头函数。

2022-10-28 17:20:36 308

原创 JavaScript:执行上下文与作用域链

执行上下文与作用域链。

2022-10-28 17:19:32 121

原创 JavaScript:数据类型

ECAMScript 有 7 种数据类型,被分为两类:简单数据类型和复杂数据类型。

2022-10-19 10:57:33 170

原创 JavaScript:异步编程

异步编程是一种编程模式。JavaScript 是单线程的,只有一个线程可以执行代码。这意味着,所有代码都只能在一个线程中按顺序执行,这很容易导致代码执行的阻塞。代码的每一个语句都需要被执行,为了完成某个计算任务需要一定的执行时间。不同任务的执行时间之间的差别可能是数量级的。根据执行时间的数量级(或长短)可以把计算任务粗略分为两种:简单任务复杂任务线程阻塞,即在执行代码时,先执行了复杂任务,使后面的简单任务一直处于等待状态。线程阻塞是 “不合理” 的,应该优先执行简单任务,再执行复杂任务。

2022-10-19 00:37:19 200

原创 JavaScript:异步函数的应用

异步函数的应用。

2022-10-18 23:45:16 303

原创 JavaScript:异步函数

通过在函数定义前使用关键字 async ,定义异步函数。定义异步函数// 命名函数 async function asyncFunc_01() {} // 匿名函数 const asyncFunc_02 = async function() {} // 箭头函数 const asyncFunc_03 = async() => {}

2022-10-18 23:44:03 3991

原创 JavaScript:期约

期约是一种机制。期约通常表示一个正在处理的、尚未结束的操作,当相关操作结束时,期约会通知系统。期约机制是 ECMAScript 实现异步编程的重要组成部分。目前,流行的期约机制的规范是规范 Promises/A+。ES6 规范以规范 Promises/A+ 为范本,来实现期约。ES6 新增类型 Promise ,来实现(支持)规范 Promises/A+。

2022-10-18 23:42:50 435

原创 JavaScript:生成器的应用

生成器的应用。

2022-10-18 23:41:48 291

原创 JavaScript:生成器

在使用关键字 function 定义函数对象时,通过在关键字 function 后面添加星号(*)来定义生成器。不能使用箭头函数定义生成器。星号(*)不受其两侧的空格影响。// 定义生成器 function * generator() {} // 在对象字面量中简写函数时 let obj = {} }

2022-10-18 23:40:22 817

原创 Vue 插件:VueRouter

VueRouter 是一个 Vue 插件,用于实现 SPA(single page web application) 应用。SPA(single page web application) 应用,即单页面应用。整个应用只有一个 .html 文件,通常命名为 index.html。SPA 应用使得客户端应用不需要向服务端请求包含完整页面的数据,而是仅请求刷新页面所需的数据,SPA 应用根据请求到的数据,在客户端对页面进行更新。这减少了客户端与服务端之间通信的数据量。

2022-10-18 23:26:34 330

原创 JavaScript:迭代

迭代(iteration)指的是按照顺序反复执行一段程序的操作,通常会有明确的终止条件。循环是迭代的基础。循环可以指定迭代的次数和每次迭代执行的操作。迭代的对象通常是一个有序集合。有序集合,即可以按某种顺序对集合的元素进行遍历的集合。在 ES6 之前,执行迭代必须使用循环或其它辅助结构。随着代码量的增加,代码会变得混乱。很多语言都通过原生语言结构解决了这个问题,开发者无须事先知道具体的迭代方式就能实现迭代。这个解决方案就是迭代器模式。

2022-10-18 23:22:50 275

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除