
es5/6
文章平均质量分 71
**之火
希望一直深耕钱端领域,但也喜欢涉猎其他计算机编程领域,钱端幸福三要素:悠闲,寡欲,融入自然。
展开
-
ES6 字符串的新增方法(二十)
特性:用另一个字符串填充当前字符串(如果需要的话),以便产生所需长度的新字符串。特性:用另一个字符串填充当前字符串(如果需要的话),以便产生所需长度的新字符串。特性:返回一个码点值的字符串,该码点值位于给定位置的 Unicode 字符。特性:返回一个新字符串,它是原字符串重复指定次数的结果。特性:判断字符串是否以指定的子字符串开始。特性:判断字符串是否以指定的子字符串结束。特性:提供一个模板字符串的原始字符串形式。特性:判断字符串是否包含指定的子字符串。用法:检查字符串的开始部分。用法:左填充字符串。原创 2024-07-19 09:22:07 · 721 阅读 · 0 评论 -
ES6 正则的扩展(十九)
特性:String.prototype.match(), String.prototype.replace(), String.prototype.search(), 和 String.prototype.split() 现在可以接受正则表达式字面量。特性:当设置了 s 修饰符(dotAll)时,点字符(.)可以匹配包括换行符在内的任何字符。特性:正则表达式对象现在有一个 flags 属性,返回正则表达式的修饰符。特性:y 修饰符使正则表达式在搜索时“粘”在每个匹配的开始位置。用法:简化正则表达式的书写。原创 2024-07-19 09:09:48 · 486 阅读 · 0 评论 -
ES6 数值的扩展(十八)
但是由于这两个二进制数的最低位都是 1,所以这个结果肯定是不正确的,因为根据二进制乘法,计算结果的二进制最低位应该也是 1。这个错误就是因为它们的乘积超过了 2 的 53 次方,JavaScript 无法保存额外的精度,就把低位的值都变成了 0。将非数值的值转为数值,再进行判断,而这两个新方法只对数值有效, Number.isFinite() 对于非数值一律返回 false ,Number.isNaN() 只有对于NaN才返回true ,非 NaN 一律返回 false。我们知道浮点数计算是不精确的。原创 2024-07-18 09:53:01 · 1593 阅读 · 0 评论 -
ES6 函数的扩展(十七)
在函数中,尾调用可以被优化,避免增加调用栈。原创 2024-07-18 08:48:54 · 205 阅读 · 0 评论 -
ES6 数组的扩展(十六)
返回数组中满足提供的测试函数的第一个元素的值,否则返回 undefined。:创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。:返回数组中满足提供的测试函数的第一个元素的索引,否则返回 -1。:用一个固定值填充数组中从起始索引到终止索引(不包括)的所有元素。:从类数组对象或可迭代对象中创建一个新的数组实例。:找出数组中满足条件的第一个元素的索引。:将数组的一部分复制到数组的另一个位置。:将数组中一段区域的元素替换为特定值。:找出数组中满足条件的第一个元素。:创建一个包含多个参数的数组。原创 2024-07-16 09:20:11 · 372 阅读 · 0 评论 -
ES6 对象的扩展(十五)
特性:在对象字面量中,可以直接使用方法定义,而不需要使用 function 关键字。用法:简化对象中方法的书写。');// 输出:Hello!原创 2024-07-16 08:52:12 · 379 阅读 · 0 评论 -
ES6 对象的新增方法(十四)
判断对象是否被冻结,即不能添加新属性、删除现有属性或改变现有属性的可枚举性、可配置性、可写性。:设置对象的原型(内部[[Prototype]]属性)。:将一个或多个源对象的所有可枚举属性复制到目标对象。:返回一个给定对象自身可枚举属性的键值对数组。:返回一个包含对象所有可枚举属性名称的数组。:返回一个包含对象所有可枚举属性值的数组。:返回一个对象的所有自身属性的描述符。:获取对象属性的详细描述。:阻止添加新属性到对象。:用于对象属性的合并。:获取对象的所有键。:获取对象的所有值。:获取对象的键值对。原创 2024-07-15 17:48:30 · 768 阅读 · 0 评论 -
ES6 Symbol (十三)
内置Symbol:使用 ES6 内置的 Symbol,如 Symbol.iterator 来实现自定义迭代器。创建Symbol:使用 Symbol() 创建一个新的 Symbol 值。作为属性键:使用 Symbol 作为对象属性的键,确保属性的唯一性。原创 2024-07-15 17:32:38 · 517 阅读 · 0 评论 -
ES6 Module 的语法(十二)
ES2020引入了动态导入,使用 import() 函数可以在运行时按需加载模块。可以使用 * as 语法导入一个模块的所有导出,并将其绑定到一个对象上。每个模块只能有一个默认导出,用 export default 来实现。一些模块在导入时会执行一些代码,这些模块被称为具有副作用的模块。你可以使用 export 关键字导出多个变量、函数或类。使用 import 关键字可以导入其他模块的命名导出。可以在导出和导入时使用 as 关键字进行重命名。导入默认导出时,不需要使用大括号。原创 2024-07-12 17:15:19 · 458 阅读 · 0 评论 -
ES6 Class 的继承(十一)
Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多。原创 2024-07-12 09:39:06 · 626 阅读 · 0 评论 -
ES6 Class(类) 总结(九)
ES6 中的 class 是一种面向对象编程的语法糖,提供了一种简洁的方式来定义对象的结构和行为。JavaScript 语言中,生成实例对象的传统方法是通过构造函数。下面是一个例子。基本上,ES6 的 class 可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的 class 写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。原创 2024-07-11 17:12:13 · 761 阅读 · 0 评论 -
ES6 async 函数详解 (十)
async 函数是什么?一句话,它就是 Generator 函数的语法糖。async 函数就是将 Generator 函数的星号( * )替换成 async ,将 yield 替换成 await ,仅此而已。Generator 函数的执行必须靠执行器,所以才有了 co 模块,而 async 函数自带执行器。也就是说, async 函数的执行,与普通函数一模一样,只要一行。原创 2024-07-11 10:57:44 · 430 阅读 · 0 评论 -
ES6 Generator函数的异步应用 (八)
【代码】ES6 Generator函数的异步应用 (八)原创 2024-07-11 08:52:21 · 431 阅读 · 0 评论 -
ES6 Generator函数的语法 (七)
ES6 中的 Generator函数是一种特殊类型的函数,它允许你控制函数的执行流程,使其在执行过程中可以多次暂停和恢复。Generator 函数在定义时使用星号 *作为后缀。原创 2024-07-10 14:19:41 · 505 阅读 · 0 评论 -
ES6 Iterator 与 for...of 循环(五)
对于大型集合,for…of 循环可能不如传统的 for 循环高效,因为每次迭代都需要调用迭代器的 next() 方法。of 循环在现代浏览器和 Node.js 中得到支持,但一些旧的 JavaScript 环境可能不支持。原创 2024-07-10 09:11:28 · 559 阅读 · 0 评论 -
ES6 之 Promise 构造函数知识点总结 (四)
Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了 Promise 对象。对象的状态不受外界影响。Promise 对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。原创 2024-07-09 10:40:30 · 668 阅读 · 0 评论 -
ES6 Reflect 详解(三)
Proxy 方法拦截 target 对象的属性赋值行为。它采用 Reflect.set 方法将值赋值给对象的属性,确保完成原有的行为,然后再部署额外的功能。原创 2024-07-08 16:19:03 · 940 阅读 · 0 评论 -
ES6 之 Proxy(代理)总结(二)
ES6 引入了 Proxy 对象,它用于创建一个对象的代理,从而可以拦截并自定义对象的基本操作,如属性查找、赋值、枚举、函数调用等。原创 2024-07-08 09:47:30 · 1207 阅读 · 0 评论 -
ES6 之 Set 与 Map 数据结构要点总结(一)
Set 和 Map 提供了现代的、高效的数据结构,适用于需要快速查找、添加和删除操作的场景。Set 对象允许你存储任何类型的唯一值,无论是原始值还是对象引用。2. delete(value):从 Set 中移除一个值。3. has(value):检查 Set 是否包含某个值。Map 对象保存键值对的集合,其中键和值可以是任意类型。1. add(value):添加一个新值到 Set。4. clear():移除 Set 中的所有值。5. size:返回 Set 中的元素数量。原创 2024-07-08 09:16:37 · 699 阅读 · 0 评论 -
深入理解 ES6中的 Reflect
Reflect是ES6为了操作对象而新增的API, 为什么要添加Reflect对象呢?它这样设计的目的是为了什么?1)将Object对象的一些明显属于语言内部的方法(比如Object.defineProperty),放到Reflect对象上,那么以后我们就可以从Reflect对象上可以拿到语言内部的方法。2)在使用对象的 Object.defineProperty(obj, name, {})时,如果出现异常的话,会抛出一个错误,需要使用try catch去捕获,但是使用 Reflect.defin原创 2020-06-08 10:01:56 · 1014 阅读 · 0 评论 -
ES6引入iterable类型
遍历Array可以采用下标循环,遍历Map和Set就无法使用下标。 为了统一集合类型,ES6标准引入了新的iterable类型,Array、Map和Set都属于iterable类型。 具有iterable类型的集合可以通过新的for ... of循环来遍历。 for ... of循环是ES6引入的新的语法,请测试你的浏览器是否支持:'use strict';var a = [1, 2, 3];for (var x of a) {}console.log('你的浏览器支持for ... of原创 2020-05-22 14:23:00 · 198 阅读 · 0 评论 -
ECMAScript6重要技术点整理
PromisePromise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。Promise对象有以下两个特点:(1)对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。这也是Promis.原创 2020-05-20 14:54:33 · 159 阅读 · 0 评论 -
记录ES6面试题-收藏
ECMAScript 6(以下简称ES6)是 JS 语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得 JS 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。接下来咱们来看看 20 道棘手的面试题,通过做题,顺带提升一下咱们的 JS 的技能。问题1:可以解释一下ES5和ES6的区别吗?主题: JavaScript 难度: ⭐⭐⭐ECMAScript 5 (ES5):ECMAScript 的第五版,于2009年标准化,该标准已在所有现代浏览器中完全支持。ECMASc..原创 2020-05-15 09:49:15 · 230 阅读 · 0 评论