js
小小飞肖
no pain,no gain
展开
-
前端利用fetch实现下载文件到本地
前端利用浏览器自带fetch实现下载文件到本地原创 2023-02-08 19:33:46 · 2236 阅读 · 0 评论 -
iframe.contentWindow介绍
iframe.contentWindow介绍原创 2022-07-21 19:48:21 · 4928 阅读 · 0 评论 -
js promise执行的时候,如果调用一个接口,这个接口可能受到网络等各方面的影响,造成接口出错,如果保证接口重试具体次数时,才去执行promise的resolve(),本文将呈现一个自动重试的方法
function autoRetry(func, retryMax) { retryNum = 0; let funcName = 'foo' return funcR = function () { let params = arguments; return new Promise((resolve, reject) => { func(...params).then(result => { resolve.原创 2021-11-11 16:16:53 · 1573 阅读 · 1 评论 -
ES6---箭头函数()=>{} 与function的区别
1.箭头函数与function定义函数的写法://functionfunction fn(a, b){ return a + b;}//arrow functionvar foo = (a, b)=>{ return a + b };2.this的指向:使用function定义的函数,this的指向随着调用环境的变化而变化的,而箭头函数中的this指向是固定不变的,一直指向的是定义函数的环境。//使用function定义的函数function foo(){ cons...原创 2021-10-22 17:55:17 · 485 阅读 · 0 评论 -
2023web前端秋招,牛客网上笔试答题,读取多行数据存储问题,看了这篇,秋招上岸大厂不是事
line1 = readline().split(' '),line2 = readline().split(' ').map(Number),line3 = readline().split(' '),每运行一次readline(),就读取一行数据而且返回值是当行数据的字符串组成形式所以如果是多行的话,一般题目会让在第一行告诉接下来还有n行数据需要读取这个时候就for循环n次 ...原创 2019-08-03 20:31:26 · 667 阅读 · 0 评论 -
js常用的数组去重方法大全,看了这篇就到了雷着面试官的时候了
// js 数组去重// 基础数据var arr = [1,1,3,3,6,7,9,9]var result = []//方法一:利用es6 Set // result = new Set(arr)// console.log([...result])// 方法二 利用indexOffunction unique(arr){ for(var value of arr){...原创 2019-07-02 14:56:27 · 136 阅读 · 0 评论 -
一文详解js中slice与splice的区别
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];var citrus = fruits.slice(1,3);原创 2021-05-28 20:21:08 · 371 阅读 · 2 评论 -
zTree展开到指定的层级
//api有两个接口展示层级 一个是expandAll展开所有的层级这个并不是一般的需求所需要的,因为全部展开显得比较纷乱,//另一个是expandNode()var zTree = $.fn.zTree.getZTreeObj("treeDemo");// 调用递归方法showZtreeNum(true,zTree,classLevel)//classLevel即你动态赋值...原创 2018-10-12 14:20:19 · 7417 阅读 · 1 评论 -
详解[].shift.call( arguments ) 和 [].slice.call( arguments )
[].slice.call( arguments ) ,顾名思义是 “把类数组对象转为数组对象”。确实这是我们想要实现的功能! 但这仅仅是说明了结果并没有解答其原理。来点基础知识:[].slice.call( arguments )// 等效于Array.prototype.slice.call( arguments )个人理解:要把arguments 转为数组对象!本着 能少写就少写,能不写就不写的想法,想到slice():可从已有的数组中返回选定的元素。slice 不会改变原来的数组.原创 2021-05-25 21:03:26 · 286 阅读 · 0 评论 -
js 手写new的实现
function objectFactory() { var obj = new Object(), Constructor = [].shift.call(arguments); obj.__proto__ = Constructor.prototype; var ret = Constructor.apply(obj, arguments); return typeof ret === 'object' ? ret : obj;};用n..原创 2021-05-24 19:50:15 · 202 阅读 · 0 评论 -
JS----预编译及变量提升详解
JS----预编译及变量提升详解前言JS属于解释型语言,在执行过程中顺序执行,但是会分块先预编译然后才执行。因此在JS中存在一种变量提升的现象。搞懂预编译环节,变量提升自然而然也就懂了。本文讲围绕以下几点进行介绍(变量提升会穿插在其中讲解):预编译执行步骤示例演示预编译执行步骤预编译发生在函数执行的前一刻,过程如下:创建AO对象,执行期上下文(后面更新关于执行期上下文详解)。寻找函数的形参和变量声明,将变量和形参名作为AO对象的属性名,值设定为undefined.将形参和实参相统一,.原创 2021-05-13 11:18:56 · 201 阅读 · 0 评论 -
js 闭包造成的GC无法回收,规避方法
从性能角度来书我们绝大多数场景中,其实没必要规避它,这块的性能开销对实际代码影响可以小到忽略不计,如果因为闭包导致一些bug需要解决的话,其实只要把自由变量变成局部变量就可以了。...原创 2021-02-02 10:53:23 · 309 阅读 · 0 评论 -
js 利用一个try catch来捕获多个await 产生的错误
首先例举一个嵌套回调的例子该例子的缺点是(1)层层嵌套,可读性差(2)每一个异步请求都需要捕获错误// 首先这个是一个嵌套回调的例子http.get('http://www.baidu.com', function (res) { console.log(res) http.get('http://www.baidu.com', function (res) { console.log(res) http.get('http://www原创 2021-02-01 19:05:46 · 2473 阅读 · 1 评论