随笔分类 - web 前端进阶之路
摘要:dataTransform.js 1 const toString = Object.prototype.toString; 2 const type = (val) => toString.call(val).slice(8, -1); 3 const hash = () => Object.cr
阅读全文
摘要:1 function getNextInt(int) { 2 const config = int.reverse().reduce( 3 (config, digit) => { 4 let sum = digit + config.increment, 5 nextInt = config.ne
阅读全文
摘要:为了弄清楚 ajax readyState 的具体意义,做了如下测试: index.html 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8" /> 5 <meta name="viewport" conten
阅读全文
摘要:client.html 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8" /> 5 <meta name="viewport" content="width=device-width, initial-scal
阅读全文
摘要:1 // Copyright (c) 2013 Pieroxy <pieroxy@pieroxy.net> 2 // This work is free. You can redistribute it and/or modify it 3 // under the terms of the WTF
阅读全文
摘要:1 const charsMap = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split(''); 2 3 function binaryToBase64(chars) { 4 const padLengt
阅读全文
摘要:深度克隆 1 function deepClone(source) { 2 if (Array.isArray(source)) { 3 const target = []; 4 for (let item of source) { 5 target.push(deepClone(item)); 6
阅读全文
摘要:1 function toUtf16(text) { 2 if (text.length 1) return text.charCodeAt(0).toString(16); 3 const point = text.codePointAt(0); 4 const highBits = 0xd800
阅读全文
摘要:问题由来:js 数字存储采用 IEEE754 标准,该标准用 64 位二进制数存储一个浮点数,即一个数字占用的内存是 8bytes,因此在存储一个无限大的数字时就会存在精度损失。对于像 0.1 这样的浮点数来说,无法用二进制的方式精确表示,这是由计算方式本身决定的,因此这部分浮点数的存储精度丢失是必
阅读全文
摘要:1 function isHex(val) { 2 if (typeof val !== 'string') return; 3 return /^[0-9a-fA-F]+$/.test(val); 4 } 5 6 function isBinary(val) { 7 if (typeof val
阅读全文
摘要:问题由来:网上说 localStorage 和 sessionStorage 的存储大小是 5M,那么这是一个精确数字还是一个估算数字? 测试下: 1 function getSize(storage) { 2 const _storage = window[storage]; 3 let piec
阅读全文
摘要:1 export default function Big() { 2 "use strict"; 3 4 function intToDigits(n) { 5 return n 6 .split("") 7 .reverse() 8 .map((d) => +d); 9 } 10 11 func
阅读全文
摘要:同源策略(SOP) 同源策略(Same origin policy)是浏览器安全模型,是浏览器为了源的安全做出的限制。 源其实就服务器,也就是说,同源策略是通过限制浏览器的行为,来保护服务器的数据,禁止非同源之间窃取对方资源。 例如,“http://127.0.0.1:3000/index.html
阅读全文
摘要:一、Blob 概念: Blob(Binary Large Object)表示二进制类型的大对象,通常是影像、音频、文本等多媒体文件;在 javascript 中,Blob 类型的对象是不可改变的原始数据 语法: new Blob(blobParts, option) 示例: 通过字符串创建一个 Bl
阅读全文
摘要:防抖意义:防抖是为了避免无效操作,也就是说当前操作是否有效,取决于在一定时间内是否有下一次操作,如果有,则覆盖上一次操作。 使用场景: 例如关键词搜索,input 框为了提高客户体验,一般都是绑定 oninput 而非 onchange,这种情况下, 如果客户 100 ms 内连续输入多个字符,就会
阅读全文

浙公网安备 33010602011771号