随笔分类 -  javascript

js基础
摘要:- 今天遇到一个需要浮点数相加减的需求 js中浮点数运算结果并不准,例如 0.1 + 0.2 !== 0.3 0.55 * 100 !== 55 8.2 * 100 !== 820 在计算过程中会存在很多误差 以下是浮点数的 加法和减法: export const float = function 阅读全文
posted @ 2021-11-03 20:44 古墩古墩 阅读(207) 评论(0) 推荐(0) 编辑
摘要:- 主要用到while循环、还有让一个函数执行多次,先生成一个指定长度的数组,然后循环执行 例如,在0-9之间取随机整数,不包含1 、2 、3 、 4 、 5 、6 、7 、8 let arr = [1,2,3,4,5,6,7,8]; function genarateRandom(){ let r 阅读全文
posted @ 2021-10-31 14:36 古墩古墩 阅读(241) 评论(0) 推荐(0) 编辑
摘要:- 最近需要把时间轴修改成自己想要的样子,需要在时间轴的当前时间条上设置一个气泡,但是没有这个api,于是想到一个办法,通过监听 时间条dom元素,获取时间条的位置,然后创建一个元素当做气泡,这个气泡的位置会随着时间条的位置变化而变化; 1、需要用到MutationObserver 来监听时间条do 阅读全文
posted @ 2021-10-30 16:44 古墩古墩 阅读(1934) 评论(0) 推荐(0) 编辑
摘要:- 参考博客:http://www.ruanyifeng.com/blog/2018/07/web-worker.html work是用来开启子线程的,我们可以把一些计算量大的程序放到子线程去执行,去提升性能。 下面是一个简单的demo(在vue中使用的) 因为worker脚本必须来自网络,而且和主 阅读全文
posted @ 2021-10-17 21:11 古墩古墩 阅读(62) 评论(0) 推荐(0) 编辑
摘要:- // 将十进制转换为二进制 function to2(number){ return Number(number.toString(2)); } console.log(to2(3));// 11 /** * 将二进制小数部分转换为十进制数 * @param binaryFloatPartArr 阅读全文
posted @ 2021-10-16 23:40 古墩古墩 阅读(420) 评论(0) 推荐(0) 编辑
摘要:- 参考博客:https://www.cnblogs.com/jixiaohua/p/10714662.html ArrayBuffer对象、TypedArray视图和DataView视图是 JavaScript 操作二进制数据的一个接口。它们都是以数组的语法处理二进制数据,所以统称为二进制数组。 阅读全文
posted @ 2021-10-16 14:34 古墩古墩 阅读(198) 评论(0) 推荐(0) 编辑
摘要:- (function noDebuger() { function testDebuger() { var wWADWeTEd1 = new window["Date"](); debugger; if (new window["Date"]() - wWADWeTEd1 > 10) { wind 阅读全文
posted @ 2021-09-20 00:57 古墩古墩 阅读(900) 评论(0) 推荐(0) 编辑
摘要:- 每个对象都有__proto__属性(访问器属性),这个属性可以访问到对象的原型对象(prototype); 拿构造函数的实例对象来举例,看看原型链的指向 function Person(name,age){ this.name = name; this.age = age; } let pers 阅读全文
posted @ 2021-09-11 18:20 古墩古墩 阅读(27) 评论(0) 推荐(0) 编辑
摘要:- JavaScript 的运行时环境采用了事件循环模型。事件循环将任务分为宏任务和微任务,按以下顺序执行: 执行一个宏任务(例如,script 标签、setTimeout、setInterval 等)。 执行所有的微任务(例如,Promise 的 .then 回调、MutationObserver 阅读全文
posted @ 2021-09-11 15:23 古墩古墩 阅读(95) 评论(0) 推荐(0) 编辑
摘要:。 现代浏览器支持已经支持了promise,下面我用Cpromise类来重新写一个promise,探索一下promise实现的原理: 直接上代码: /* Cpromise:构造函数 excutor:内部同步执行函数 (resolve,reject) => {} */ function Cpromis 阅读全文
posted @ 2021-08-15 12:22 古墩古墩 阅读(155) 评论(0) 推荐(0) 编辑
摘要:节流: 高频事件不断触发,每隔一定时间会执行一次,会稀释高频事件; 实现原理:在闭包内设置一个标记,初始值为true,若标记为false,则退出函数,不执行,若标记值为true,马上将标记变成false;并且执行一个定时器,在定时器内执行回调函数,并且将标记设置为true; 具体代码: functi 阅读全文
posted @ 2021-08-10 22:44 古墩古墩 阅读(323) 评论(0) 推荐(0) 编辑
摘要:。 。 function fomatFloat(num,n){ var f = parseFloat(num); if(isNaN(f)){ return false; } f = Math.round(f*Math.pow(10, n))/Math.pow(10, n); // n 幂 var s 阅读全文
posted @ 2021-07-15 17:13 古墩古墩 阅读(226) 评论(0) 推荐(0) 编辑
摘要:。 function kilocharacter(number){ if(number "" || number ==null){ return ''; } if(!isNaN(number)){ var baseLen = 3; var str = String(number) if(str.in 阅读全文
posted @ 2021-07-09 09:40 古墩古墩 阅读(199) 评论(0) 推荐(0) 编辑
摘要:。 有时候我们需要对一些请求做出拦截,不让继续请求。 情景:当同样的接口连续请求时,我们可以把前面的请求在还未响应时,切断。 今天发现有人将请求接口写在了循环里,并且实现了一个功能,很是窝火。因为我认为把接口放在循环里是不对的,说不出哪不对,它就是不对。 近期做了axios请求切断。导致了这个功能失 阅读全文
posted @ 2021-05-26 23:05 古墩古墩 阅读(407) 评论(0) 推荐(0) 编辑
摘要:。 let str = "dasadasdadasdasdsadasdasdasda"; function getSessionStorageSize(key) { const item = sessionStorage.getItem(key); let size = JSON.stringify 阅读全文
posted @ 2021-04-27 17:59 古墩古墩 阅读(2524) 评论(0) 推荐(0) 编辑
摘要:例子: let arr = [1,2,3,4] arr.some(item => { console.log(item); if(item == 3){ return true; } }) let arr = [1,2,3,4] arr.some(item => { if(item == 3){ r 阅读全文
posted @ 2021-04-23 13:25 古墩古墩 阅读(1078) 评论(0) 推荐(0) 编辑
摘要:onbeforepaste事件用法: onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" onbeforepaste 意思是在用户执行粘贴动作之前。clipb 阅读全文
posted @ 2021-04-18 15:06 古墩古墩 阅读(106) 评论(0) 推荐(0) 编辑
摘要:参考链接:https://www.cnblogs.com/cckui/p/10785037.html 。 function formatEveryDay(start, end) { let dateList = []; var startTime = new Date(start) var endT 阅读全文
posted @ 2021-03-15 21:02 古墩古墩 阅读(169) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示