zqkxlf.com
Open in
urlscan Pro
13.229.16.40
Public Scan
URL:
https://zqkxlf.com/
Submission: On December 09 via api from US — Scanned from SG
Submission: On December 09 via api from US — Scanned from SG
Form analysis
0 forms found in the DOMText Content
立新技术博客 * 首页 * 归档 0% JAVASCRIPT专题之类型判断(上) 发表于 2024-05-08 更新于 2024-05-09 前言 类型判断在 web 开发中有非常广泛的应用,简单的有判断数字还是字符串,进阶一点的有判断数组还是对象,再进阶一点的有判断日期、正则、错误类型,再再进阶一点还有比如判断 plainObject、空对象、Window 对象等等。 以上都会讲,今天是上半场。 阅读全文 » JAVASCRIPT专题之类型判断(下) 发表于 2024-05-08 更新于 2024-05-09 前言 在上篇《JavaScript专题之类型判断(上)》中,我们抄袭 jQuery 写了一个 type 函数,可以检测出常见的数据类型,然而在开发中还有更加复杂的判断,比如 plainObject、空对象、Window 对象等,这一篇就让我们接着抄袭 jQuery 去看一下这些类型的判断。 阅读全文 » JAVASCRIPT专题之数组去重 发表于 2024-05-07 更新于 2024-05-09 前言 数组去重方法老生常谈,既然是常谈,我也来谈谈。 阅读全文 » JAVASCRIPT专题之跟着UNDERSCORE学防抖 发表于 2024-05-06 更新于 2024-05-09 前言 在前端开发中会遇到一些频繁的事件触发,比如: 1. window 的 resize、scroll 2. mousedown、mousemove 3. keyup、keydown …… 为此,我们举个示例代码来了解事件如何频繁的触发: 我们写个 index.html 文件: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <!DOCTYPE html> <html lang="zh-cmn-Hans"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="IE=edge, chrome=1"> <title>debounce</title> <style> #container{ width: 100%; height: 200px; line-height: 200px; text-align: center; color: #fff; background-color: #444; font-size: 30px; } </style> </head> <body> <div id="container"></div> <script src="debounce.js"></script> </body> </html> debounce.js 文件的代码如下: 1 2 3 4 5 6 7 8 var count = 1; var container = document.getElementById('container'); function getUserAction() { container.innerHTML = count++; }; container.onmousemove = getUserAction; 我们来看看效果: 从左边滑到右边就触发了 165 次 getUserAction 函数! 因为这个例子很简单,所以浏览器完全反应的过来,可是如果是复杂的回调函数或是 ajax 请求呢?假设 1 秒触发了 60 次,每个回调就必须在 1000 / 60 = 16.67ms 内完成,否则就会有卡顿出现。 为了解决这个问题,一般有两种解决方案: 1. debounce 防抖 2. throttle 节流 今天重点讲讲防抖的实现。 阅读全文 » JAVASCRIPT专题之在数组中查找指定元素 发表于 2024-05-05 更新于 2024-05-09 前言 在开发中,我们经常会遇到在数组中查找指定元素的需求,可能大家觉得这个需求过于简单,然而如何优雅的去实现一个 findIndex 和 findLastIndex、indexOf 和 lastIndexOf 方法却是很少人去思考的。本文就带着大家一起参考着 underscore 去实现这些方法。 在实现前,先看看 ES6 的 findIndex 方法,让大家了解 findIndex 的使用方法。 阅读全文 » JAVASCRIPT专题之函数记忆 发表于 2024-05-04 更新于 2024-05-09 定义 函数记忆是指将上次的计算结果缓存起来,当下次调用时,如果遇到相同的参数,就直接返回缓存中的数据。 举个例子: 1 2 3 4 5 6 7 8 9 function add(a, b) { return a + b; } // 假设 memorize 可以实现函数记忆 var memoizedAdd = memorize(add); memoizedAdd(1, 2) // 3 memoizedAdd(1, 2) // 相同的参数,第二次调用时,从缓存中取出数据,而非重新计算一次 阅读全文 » JAVASCRIPT专题之如何判断两个对象相等 发表于 2024-05-03 更新于 2024-05-09 前言 虽然标题写的是如何判断两个对象相等,但本篇我们不仅仅判断两个对象相等,实际上,我们要做到的是如何判断两个参数相等,而这必然会涉及到多种类型的判断。 阅读全文 » JAVASCRIPT专题之解读V8排序源码 发表于 2024-05-02 更新于 2024-05-09 前言 v8 是 Chrome 的 JavaScript 引擎,其中关于数组的排序完全采用了 JavaScript 实现。 排序采用的算法跟数组的长度有关,当数组长度小于等于 10 时,采用插入排序,大于 10 的时候,采用快速排序。(当然了,这种说法并不严谨)。 我们先来看看插入排序和快速排序。 阅读全文 » JAVASCRIPT专题之数组扁平化 发表于 2024-04-30 更新于 2024-05-09 扁平化 数组的扁平化,就是将一个嵌套多层的数组 array (嵌套可以是任何层数)转换为只有一层的数组。 举个例子,假设有个名为 flatten 的函数可以做到数组扁平化,效果就会如下: 1 2 var arr = [1, [2, [3, 4]]]; console.log(flatten(arr)) // [1, 2, 3, 4] 知道了效果是什么样的了,我们可以去尝试着写这个 flatten 函数了 阅读全文 » JAVASCRIPT专题之递归 发表于 2024-04-30 更新于 2024-05-09 定义 程序调用自身的编程技巧称为递归(recursion)。 阅读全文 » 12 * 文章目录 * 站点概览 Admin 20 日志 京ICP备17008221号-1 © 2024 文章抓取自互联网,仅供学习使用 由 Hexo & NexT.Muse 强力驱动