随笔分类 -  javascript

Object.prototype.toString.call
摘要:我们都知道Object.prototype.toString.call可以用来判断变量的类型,在这之前我们可以使用typeof来简单的判断 typeof '123' // string typeof 123 // number typeof undefined // undefined typeof 阅读全文

posted @ 2021-12-04 17:52 smallpen 阅读(855) 评论(0) 推荐(0)

多维数组扁平化一维数组
摘要:1.Array.prototype.flat() flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。 const arr = [0, 1, 2, [[[3, 4]]]]; console.log(arr.flat(2)); // [0, 阅读全文

posted @ 2021-07-28 23:06 smallpen 阅读(110) 评论(0) 推荐(0)

手把手教你实现三种绑定方式(call、apply、bind)
摘要:关于绑定首先要说下this的指向问题。 我们都知道: 函数调用时this指向window 对象调用函数时this指向对象本身 看下面得例子: // 1 function test(){ const name = 'test1'; console.log(this.name) } constname 阅读全文

posted @ 2021-06-08 22:34 smallpen 阅读(420) 评论(0) 推荐(0)

React-setState的那些事儿
摘要:关于setState,使用过react的人应该再熟悉不过了,在hooks还不那么普及的时候,除了使用函数式组件,我们使用最多的应该就是类创建react的组件了,而在类组件中我们通常会使用state来管理组件的数据变化及更新。 setState的使用注意事项 setState(updater, cal 阅读全文

posted @ 2021-06-06 17:18 smallpen 阅读(118) 评论(0) 推荐(0)

不要直接使用数字字符串来比较大小
摘要:最近的项目中,后端给我返回来数字是字符串形式的,而根据实际业务需求,我需要进行比较大小。 而我当时考虑的是,js本身属于弱类型,动态语言 弱类型: 在编程语言中,语言被分为强类型和弱类型,我们将支持隐式转换的语言称为弱类型语言,不支持隐式转换的语言称为强类型语言, 而js本身开发出来之际由于各种机缘 阅读全文

posted @ 2021-06-06 17:05 smallpen 阅读(1615) 评论(0) 推荐(1)

js的节流、防抖以及使用场景
摘要:介绍 😲 首先看一个没有经过任何处理的🌰: 效果如下: 可以发现,只要按下键盘就会触发函数调用,这样在某些情况下会造成资源的浪费,在这些情况下,可能只需要在输入完成后做请求,比如身份验证等。 防抖处理 首先看下效果: 由此可以看出来,当我们重新频繁的输入后,并不会立即调用方法,只有在经过指定的间 阅读全文

posted @ 2019-01-18 17:53 smallpen 阅读(6774) 评论(2) 推荐(3)

js中reduce用法详解
摘要:介绍reduce reduce() 方法接收一个函数作为累加器,reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(上一次回调的返回值),当前元素值,当前索引,原数组 语法:arr.reduce(callback,[initialValue 阅读全文

posted @ 2019-01-10 12:34 smallpen 阅读(41811) 评论(0) 推荐(2)

toFixed奇葩问题
摘要:1.浮点数运算后的精度问题 在计算商品价格加减乘除时,偶尔会出现精度问题 而在浮点数运算后出现的精度问题,刚开始往往想到的使用toFixed 来进行解决,因为toFixed()方法可把Number四舍五入为指定小数位数的数字。 但是在常用浏览器里,toFixed却不怎么尽人意 浮点数的存储 浮点数存 阅读全文

posted @ 2018-08-23 23:08 smallpen 阅读(2652) 评论(0) 推荐(0)