javaScript
文章平均质量分 61
**之火
希望一直深耕钱端领域,但也喜欢涉猎其他计算机编程领域,钱端幸福三要素:悠闲,寡欲,融入自然。
展开
-
ES6 字符串的新增方法(二十)
特性:用另一个字符串填充当前字符串(如果需要的话),以便产生所需长度的新字符串。特性:用另一个字符串填充当前字符串(如果需要的话),以便产生所需长度的新字符串。特性:返回一个码点值的字符串,该码点值位于给定位置的 Unicode 字符。特性:返回一个新字符串,它是原字符串重复指定次数的结果。特性:判断字符串是否以指定的子字符串开始。特性:判断字符串是否以指定的子字符串结束。特性:提供一个模板字符串的原始字符串形式。特性:判断字符串是否包含指定的子字符串。用法:检查字符串的开始部分。用法:左填充字符串。原创 2024-07-19 09:22:07 · 684 阅读 · 0 评论 -
ES6 正则的扩展(十九)
特性:String.prototype.match(), String.prototype.replace(), String.prototype.search(), 和 String.prototype.split() 现在可以接受正则表达式字面量。特性:当设置了 s 修饰符(dotAll)时,点字符(.)可以匹配包括换行符在内的任何字符。特性:正则表达式对象现在有一个 flags 属性,返回正则表达式的修饰符。特性:y 修饰符使正则表达式在搜索时“粘”在每个匹配的开始位置。用法:简化正则表达式的书写。原创 2024-07-19 09:09:48 · 452 阅读 · 0 评论 -
ES6 数值的扩展(十八)
但是由于这两个二进制数的最低位都是 1,所以这个结果肯定是不正确的,因为根据二进制乘法,计算结果的二进制最低位应该也是 1。这个错误就是因为它们的乘积超过了 2 的 53 次方,JavaScript 无法保存额外的精度,就把低位的值都变成了 0。将非数值的值转为数值,再进行判断,而这两个新方法只对数值有效, Number.isFinite() 对于非数值一律返回 false ,Number.isNaN() 只有对于NaN才返回true ,非 NaN 一律返回 false。我们知道浮点数计算是不精确的。原创 2024-07-18 09:53:01 · 1543 阅读 · 0 评论 -
ES6 函数的扩展(十七)
在函数中,尾调用可以被优化,避免增加调用栈。原创 2024-07-18 08:48:54 · 181 阅读 · 0 评论 -
ES6 数组的扩展(十六)
返回数组中满足提供的测试函数的第一个元素的值,否则返回 undefined。:创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。:返回数组中满足提供的测试函数的第一个元素的索引,否则返回 -1。:用一个固定值填充数组中从起始索引到终止索引(不包括)的所有元素。:从类数组对象或可迭代对象中创建一个新的数组实例。:找出数组中满足条件的第一个元素的索引。:将数组的一部分复制到数组的另一个位置。:将数组中一段区域的元素替换为特定值。:找出数组中满足条件的第一个元素。:创建一个包含多个参数的数组。原创 2024-07-16 09:20:11 · 352 阅读 · 0 评论 -
ES6 对象的扩展(十五)
特性:在对象字面量中,可以直接使用方法定义,而不需要使用 function 关键字。用法:简化对象中方法的书写。');// 输出:Hello!原创 2024-07-16 08:52:12 · 350 阅读 · 0 评论 -
ES6 对象的新增方法(十四)
判断对象是否被冻结,即不能添加新属性、删除现有属性或改变现有属性的可枚举性、可配置性、可写性。:设置对象的原型(内部[[Prototype]]属性)。:将一个或多个源对象的所有可枚举属性复制到目标对象。:返回一个给定对象自身可枚举属性的键值对数组。:返回一个包含对象所有可枚举属性名称的数组。:返回一个包含对象所有可枚举属性值的数组。:返回一个对象的所有自身属性的描述符。:获取对象属性的详细描述。:阻止添加新属性到对象。:用于对象属性的合并。:获取对象的所有键。:获取对象的所有值。:获取对象的键值对。原创 2024-07-15 17:48:30 · 719 阅读 · 0 评论 -
ES6 Symbol (十三)
内置Symbol:使用 ES6 内置的 Symbol,如 Symbol.iterator 来实现自定义迭代器。创建Symbol:使用 Symbol() 创建一个新的 Symbol 值。作为属性键:使用 Symbol 作为对象属性的键,确保属性的唯一性。原创 2024-07-15 17:32:38 · 492 阅读 · 0 评论 -
ES6 Module 的语法(十二)
ES2020引入了动态导入,使用 import() 函数可以在运行时按需加载模块。可以使用 * as 语法导入一个模块的所有导出,并将其绑定到一个对象上。每个模块只能有一个默认导出,用 export default 来实现。一些模块在导入时会执行一些代码,这些模块被称为具有副作用的模块。你可以使用 export 关键字导出多个变量、函数或类。使用 import 关键字可以导入其他模块的命名导出。可以在导出和导入时使用 as 关键字进行重命名。导入默认导出时,不需要使用大括号。原创 2024-07-12 17:15:19 · 407 阅读 · 0 评论 -
ES6 Class 的继承(十一)
Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多。原创 2024-07-12 09:39:06 · 594 阅读 · 0 评论 -
ES6 Class(类) 总结(九)
ES6 中的 class 是一种面向对象编程的语法糖,提供了一种简洁的方式来定义对象的结构和行为。JavaScript 语言中,生成实例对象的传统方法是通过构造函数。下面是一个例子。基本上,ES6 的 class 可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的 class 写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。原创 2024-07-11 17:12:13 · 735 阅读 · 0 评论 -
ES6 async 函数详解 (十)
async 函数是什么?一句话,它就是 Generator 函数的语法糖。async 函数就是将 Generator 函数的星号( * )替换成 async ,将 yield 替换成 await ,仅此而已。Generator 函数的执行必须靠执行器,所以才有了 co 模块,而 async 函数自带执行器。也就是说, async 函数的执行,与普通函数一模一样,只要一行。原创 2024-07-11 10:57:44 · 391 阅读 · 0 评论 -
ES6 Generator函数的异步应用 (八)
【代码】ES6 Generator函数的异步应用 (八)原创 2024-07-11 08:52:21 · 399 阅读 · 0 评论 -
ES6 Generator函数的语法 (七)
ES6 中的 Generator函数是一种特殊类型的函数,它允许你控制函数的执行流程,使其在执行过程中可以多次暂停和恢复。Generator 函数在定义时使用星号 *作为后缀。原创 2024-07-10 14:19:41 · 475 阅读 · 0 评论 -
ES6 Iterator 与 for...of 循环(五)
对于大型集合,for…of 循环可能不如传统的 for 循环高效,因为每次迭代都需要调用迭代器的 next() 方法。of 循环在现代浏览器和 Node.js 中得到支持,但一些旧的 JavaScript 环境可能不支持。原创 2024-07-10 09:11:28 · 522 阅读 · 0 评论 -
ES6 之 Promise 构造函数知识点总结 (四)
Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了 Promise 对象。对象的状态不受外界影响。Promise 对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。原创 2024-07-09 10:40:30 · 630 阅读 · 0 评论 -
ES6 Reflect 详解(三)
Proxy 方法拦截 target 对象的属性赋值行为。它采用 Reflect.set 方法将值赋值给对象的属性,确保完成原有的行为,然后再部署额外的功能。原创 2024-07-08 16:19:03 · 901 阅读 · 0 评论 -
ES6 之 Proxy(代理)总结(二)
ES6 引入了 Proxy 对象,它用于创建一个对象的代理,从而可以拦截并自定义对象的基本操作,如属性查找、赋值、枚举、函数调用等。原创 2024-07-08 09:47:30 · 1117 阅读 · 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 · 665 阅读 · 0 评论 -
ArrayBuffer 对象常见的几个用途
ArrayBuffer 在 JavaScript 中的用途广泛,主要用于处理二进制数据。ArrayBuffer 对象、 TypedArray 视图和 DataView 视图是 JavaScript 操作二进制数据的一个接口。本文介绍ArrayBuffer 对象的常见的一些用法。原创 2024-07-05 09:52:39 · 178 阅读 · 0 评论 -
JavaScript 原型链那些事
1. 原型对象:在JavaScript中,对象可以有一个原型对象,该对象本身也是一个对象。对象的原型对象通过内部属性[[Prototype]]来引用,这个属性在ES5可以通过Object.getPrototypeOf()或__proto__(非标准但被广泛实现的属性)访问。2. 属性查找:当访问一个对象的属性时,如果该属性在对象自身上不存在,JavaScript 引擎会沿着[[Prototype]]链向上查找,直到找到该属性或到达链的末端。3. 构造函数的prototype属性。原创 2024-07-04 09:26:09 · 865 阅读 · 0 评论 -
JavaScript性能优化几点小窍门
因为这样会大大增加 HTML 文件的大小,无益于代码的压缩和缓存的使用。避免在if和while语句的条件部分进行赋值,如if (a = b),应该写成if (a == b),但是在比较是否相等的情况下,最好使用全等运行符,也就是使用===和!==操作符会相对于==和!和函数类似 ,with语句会创建自己的作用域,因此会增加其中执行的代码的作用域链的长度,由于额外的作用域链的查找,在with语句中执行的代码肯定会比外面执行的代码要慢,在能不使用with语句的时候尽量不要使用with语句。原创 2024-07-03 09:23:45 · 923 阅读 · 0 评论 -
javascript: void(0);用法和常见问题
使用javascript:void(0)可以防止链接跳转,但并不是所有情况下都适用。例如,如果你需要链接执行JavaScript代码,但仍然希望它看起来像一个正常的链接,你可能需要其他方法。void(0)返回undefined,但undefined本身不是一个函数调用的结果,而是JavaScript中表示没有值的特殊值。虽然void操作符本身对性能影响不大,但过度使用或在不必要的地方使用可能会让代码难以阅读和维护。void(0)有时会被误解为调用了名为void的函数,实际上void是一个一元操作符。原创 2024-07-02 09:26:15 · 587 阅读 · 0 评论 -
JavaScript 很少有人知道的最隐僻的14个特性
【代码】JavaScript 很少有人知道的最隐僻的14个特性。原创 2024-07-02 08:50:47 · 239 阅读 · 0 评论 -
前端模块导入导出方式
【代码】前端模块导入导出方式。原创 2024-05-15 22:07:56 · 238 阅读 · 0 评论 -
关于Vue Dialog弹框中使用表格数据不刷新问题解决
Vue使用过程中难免会碰到父子传值问题存在的褚多坑,现今遇到的一个典型的场景记录下来一起分享。首先是父组件中传一个对象配置参数给弹框组件,数据包含:弹框标题,弹框宽度,和是否显示弹框变量,和弹框中的表格表头数据,如下图:问题是,我从父组件传弹框标题的变量dialogConfig[‘title’]进来了,但是页面表格列没有相应刷新最新数据,好无语哦;开始还以为是弹框visible.sync属性...原创 2020-03-06 23:17:17 · 5766 阅读 · 0 评论 -
axios介绍总结
什么是 axios?Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。特性从浏览器中创建XMLHttpRequests 从 node.js 创建http请求 支持PromiseAPI 拦截请求和响应 转换请求数据和响应数据 取消请求 自动转换 JSON 数据 客户端支持防御XSRF安装使用 npm: $ npm install axios 使用 bower: $ bower ins...原创 2020-05-13 12:20:01 · 309 阅读 · 0 评论 -
Proxy基本知识点
Proxy基本语法const obj = new Proxy(target, handler);参数说明如下:target:被代理对象。handler:是一个对象,声明了代理target的一些操作。obj:是被代理完成之后返回的对象。但是当外界每次对obj进行操作时,就会执行handler对象上的一些方法。handler中常用的对象方法如下:1. get(target, propKey, receiver)2. set(target, propKey, value, receive...原创 2020-06-08 09:54:27 · 19471 阅读 · 0 评论 -
JavaScript 全局属性/函数
JavaScript 全局属性属性 描述 Infinity 代表正的无穷大的数值。 NaN 指示某个值是不是数字值。 undefined 指示未定义的值。 JavaScript 全局函数函数 描述 decodeURI() 解码某个编码的 URI。 decodeURIComponent() 解码一个编码的 URI 组件。 encodeURI() 把字符串编码为 URI。 encodeURIComponent() 把字原创 2024-04-12 09:00:00 · 251 阅读 · 0 评论 -
javascript的动态作用域和静态作用域
当一个函数内部使用某个变量时,会先在当前函数的作用域内查找该变量,如果找不到,则会在上级作用域中查找,直至找到全局作用域。词法作用域让foo()中的a通过RHS(Right-Hand Side 赋值表达式中的右侧部分)引用带了全局作用域中的a,因此会输出2。原创 2024-03-17 09:00:00 · 217 阅读 · 0 评论 -
JavaScript Math 对象
Math 对象用于执行数学任务。Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math()。原创 2024-04-11 21:44:59 · 560 阅读 · 0 评论 -
JavaScript Array 对象
Array 对象用于在变量中存储多个值:原创 2024-04-10 09:12:05 · 179 阅读 · 0 评论 -
现代javaScript的模块机制
【代码】现代javaScript的模块机制。原创 2024-03-12 09:15:00 · 166 阅读 · 0 评论 -
JavaScript 中闭包小结
在 JavaScript 中,闭包(Closure)是一个非常重要的概念,也是其功能强大的原因之一。闭包可以简单理解为一个能访问和操作其外部词法环境(lexical environment)的函数。这意味着(或称为内嵌函数)。这是因为闭包可以维持一个到其外部作用域的引用。原创 2024-03-05 09:19:38 · 434 阅读 · 0 评论 -
javascript 的eval()和with是干嘛的
它接收一个字符串参数,并将其作为 JavaScript 代码来解析和执行。这意味着你可以使用 eval() 动态地执行任何 JavaScript 代码。原创 2024-03-03 19:54:16 · 561 阅读 · 0 评论 -
javascript中使用‘use strict’和不使用的区别
严格模式使得 JavaScript 对某些可能的问题抛出错误,而在非严格模式下,这些问题可能会被忽略。例如,未声明的变量(即全局变量)在非严格模式下会被隐式地创建为全局变量,而在严格模式下会抛出错误。在严格模式下,this 关键字的值在函数调用时始终为 undefined(除非该函数是对象的方法)。在严格模式下,eval() 函数的作用域限制在调用它的函数内部,而不是全局作用域。这有助于防止使用未声明的变量,从而减少潜在的错误(例子如下:)在严格模式下,函数声明必须在代码块的顶部,否则会导致语法错误。原创 2024-03-01 16:17:38 · 220 阅读 · 1 评论 -
十步创建一个(vue-cli+webpack+typescript)项目
1、vue init webpack test 初始化项目初始化项目选择配置步骤省略…(根据项目需求选择即可)2、安装ts所需要的依赖cnpm i typescripts ts-loader@^3.5.0 --save-dev3、webpack.base.conf.js 添加rules{ test:/\.(tsx|ts)?$/, loader:'ts-loader', exclude:/node_modules/, options:{ append原创 2021-08-24 15:15:20 · 191 阅读 · 0 评论 -
几种前端数据存储方式(记录)
1. cookiecookie生成cookie是存在客户端,session存在服务器端。在cookie当用户第一次访问网页时,服务器会给客户端返回一个cookie,在cookie中保存着服务器端session文件的位置信息,用户第一次访问服务器,服务器就会为它创建一个session文件,并将session的标识保存在cookie中发给它。在这之后,通过为每个请求添加 Cookie HTTP 头将信息发送回服务器。cookie访问和设置在 JavaScript 中可以通过 document.cookie原创 2021-07-22 15:05:18 · 3816 阅读 · 1 评论 -
Vue中使用keep alive做缓存,组件中含多个iframe每次加载如何做到缓存问题
问题场景:1.一个公共组件包含多个iframe嵌套页面,希望是每次激活的iframe页面能做到缓存内容;2.这个公共组件注册共享一个路由;原先解决思路:使用keep-alive标签做缓存,结果公共组件是缓存了,但每次切换加载iframe页面都被刷新了。最后借鉴了位仁兄的解决思路(https://blog.csdn.net/saowen163/article/details/106318374?utm_medium=distribute.pc_aggpage_search_result.non原创 2020-08-31 09:30:14 · 5507 阅读 · 5 评论 -
html中iframe请求设定为post方式
https://blog.csdn.net/slh2016/article/details/80541103转载 2020-06-25 00:28:29 · 610 阅读 · 0 评论