最新发布
有了for循环 为什么还要forEach? - 君霖驿站

有了for循环 为什么还要forEach?

js中那么多循环,for for...in for...of forEach,有些循环感觉上是大同小异今天我们讨论下for循环和forEach的差异。我们从几个维度展开讨论: for循环和forEach的本质区别。for循环和forEac...
async/await究竟是什么? - 君霖驿站

async/await究竟是什么?

Generator函数 在聊async/await前,必须先聊一下generator,因为async/await是generator的语法糖。前端人员都知道,generator有一下几个特点: function关键字与函数名之间有一个星号 '*'...
手写JavaScript常见方法 - 君霖驿站

手写JavaScript常见方法

万丈高楼平地起,地基打的牢,才能永远立于不败之地。今天给大家带来的是10个常见的 JavaScript 手写功能,重要的地方已添加注释。有的是借鉴别人的,有的是自己写的,如有不正确的地方,欢迎多...
JavaScript块级作用域的实现原理 - 君霖驿站

JavaScript块级作用域的实现原理

作用域与执行上下文 作用域与执行上下文是不同的概念。 作用域 作用域在函数声明时就已经确定了,作用域是据名称来查找变量的一套规则,也就是确定了当前执行代码对变量的访问权限。Ja...
JavaScript 技巧 - 君霖驿站

JavaScript 技巧

分享一些我觉得有用的技巧。其中一些我在实践中使用过,而另一些则是解决老问题的新方法。Enjoy! 1. 确保数组的长度 不知道你是否遇见过这样的情况,在处理网格结构的时候,如果原始数据...
269个JavaScript工具函数,助你提升工作效率 - 君霖驿站

269个JavaScript工具函数,助你提升工作效率

1.匹配正整数 // 匹配正整数 let isPositiveNum = val => { return /^[1-9]\d*$/.test(val); }; console.log(isPositiveNum(9)) //true console.log(isPositiveNum(2.2)) //false 2.匹...
32个手写JS,巩固你的JS基础 - 君霖驿站

32个手写JS,巩固你的JS基础

01.数组扁平化 数组扁平化是指将一个多维数组变为一个一维数组 const arr = [1, [2, [3, [4, 5]]], 6]; // => [1, 2, 3, 4, 5, 6] 方法一:使用flat() const res1 = arr.flat(Infi...
vue3快速入门 - 君霖驿站

vue3快速入门

经过了漫长的迭代,Vue3.0终于在上2020-09-18发布了,带了翻天覆地的变化,使用了Typescript 进行了大规模的重构,带来了Composition API RFC版本,类似React Hook 一样的写Vue,可以自定义自己...
聊聊es2020新增的运算符(?.) (??) - 君霖驿站

聊聊es2020新增的运算符(?.) (??)

链判断运算符(?.) ❝非常好用、常用,搭配Null 判断运算符使用,效果更佳,完美!❞ 我们通常获取一个对象多层的属性值时,需要进行多次的判断。如不判断,一个为空则报错,导致后面无...
reduce的骚操作 - 君霖驿站

reduce的骚操作

reduce方法是JavaScript中一个比较强大的方法,这里总结了reduce的用法以及它的常用场景。 reduce方法是一个数组的迭代方法,和map、filter不同,reduce方法可缓存一个变量,迭代时我们可以...