精选分类

文章列表

4.7k 4 分钟

了解哪一种 for 循环或迭代器适合我们的需求,防止我们犯下一些影响应用性能的低级错误。

JavaScript 是 Web 开发领域的 “常青树”。无论是 JavaScript 框架(如 Node.js、React、Angular、Vue 等),还是原生 JavaScript,都拥有非常庞大的粉丝基础。我们来谈谈现代 JavaScript 吧。循环一直是大多数编程语言的重要组成部分,而现代 JavaScript 为我们提供了许多迭代或循环值的方法。

但问题在于,我们是否真的知道哪种循环或迭代最适合我们的需求。 for 循环有很多变形,例如 forfor (倒序)、 for…offorEachfor…infor…await 。本文将围绕这些展开讨论。

1.3k 1 分钟

# 移动端自适应 —— 手淘 flexible

熟悉移动端的自适应方案的朋友对 rem 适应方案,肯定不陌生,最出名的就是阿里的 lib-flexible 方案。

** 原理:**flexible 就是根据不同的屏幕算出 html 的 font-size,通过 js 来动态写 meta 标签。

事实上他做了这几样事情:

  • 动态改写 <meta> 标签
  • <html> 元素添加 data-dpr 属性,并且动态改写 data-dpr 的值
  • <html> 元素添加 font-size 属性,并且动态改写 font-size 的值

比如我们在做移动端的时候,经常拿到的设计稿是 640px 或者 750px。自己项目中就是 640px,以此为例,自己在项目中为了计算方便,所以给 html 根元素设置的字体大小是 100px,也就是在 640px 下面。这里注意,我们给 html 设置 100px,这个是字体哦,所以最好在 body 设置一下字体大小。

3.4k 3 分钟

# 前言

Vue 和 React 版本其实区别不大,,,主要使用原生 js 就能实现,性能上就没考虑太多(可以在完成需求后,移除进入视区后的元素的类名,如:slide-item,lazy-img 等)

# 一、滚动动画:Vue 版本

# 给 HTML 元素添加 class

1
2
<div class="slide-item">需要根据滚动条位置显示的元素</div>
<div class="slide-item slide-delay" data-delay="200">有延迟的元素</div>
3.2k 3 分钟

# 一、有趣的现象

按照大家的常识,JavaScript 代码在执行是一定是自上而下的,你需要输出一个字符串,当然需要提前声明一个 保存string类型的变量 。如果深奥的道理我都能懂,于是我阅读了下面的代码。

# 1.1 我以为的开局

1
2
var str = '123';
console.log(str); // 123

我们调换一下代码的位置在再看:

1
2
console.log(str); // undefined
var str = '123';
7.6k 7 分钟

# 需求

最近遇到个需求:前端登录后,后端返回 tokentoken有效时间 ,当 token 过期时要求用旧 token 去获取新的 token,前端需要做到无痛刷新 token ,即请求刷新 token 时要做到用户无感知。

# 需求解析

当用户发起一个请求时,判断 token 是否已过期,若已过期则先调 refreshToken 接口,拿到新的 token 后再继续执行之前的请求。

这个问题的难点在于:当同时发起多个请求,而刷新 token 的接口还没返回,此时其他请求该如何处理?接下来会循序渐进地分享一下整个过程。

3.5k 3 分钟

# 一、类型

可能许多习惯了 C++、C# 这类静态语言(强类型)语言的小伙伴们在编写 Js 代码时,会很不习惯,因为相对于静态语言来说,Js 甚至没有类型的” 概念 “。

而且 Js 中吐槽较多的恰恰就包含类型转换,在我们日常写代码时总是遇到或显示或隐示的类型转换,比如:

你要获取数字 123 的个位十位百位,你会怎么做?

  • toSrting () 后通过下标获取?
  • 取整取余?

使用类型转换形式多样。有些方式简明易懂,也很安全,然而稍不留神,就会出现意想不到的结果。

为了学习和掌握类型转换,现在先让我们来深入了解一下值和类型。

3.6k 3 分钟

# 一、什么是闭包

顾名思义,遇见问题先问为什么是我们一贯的思维方式,我们尝试回答一下:

  1. 闭包就是函数内部的子函数 —— 等于没说
  2. 当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前词法作用域之外执行。—— 靠谱
  3. 闭包就是能够读取其他函数内部变量的函数,在本质上是函数内部和函数外部链接的桥梁 —— 靠谱
  4. 函数和对其周围状态(词法环境)的引用捆绑在一起构成闭包(closure)—— 很靠谱

我们试着用代码来描述一下上面的回答,看看你最中意哪一个~

4.1k 4 分钟

本篇文章,主要讲解的立即执行函数或自执行匿名函数的含义、用法、以及使用它的主要场景。系列的前面几篇文章主要讲解了作用域、原型,本篇文章一样起到了承上启下的作用,如果您感兴趣,不妨去看看哦~

# 一、了解立即调用函数表达式

# 1.1 思维导图

在这里插入图片描述