两相知

文章 评论 浏览 31

两相知 2022-05-04 13:55:10

div.parent {
display: table;
}
div.child {
display: table-cell
vertical-align: middle;
text-align: center;
}

需要再补充一个@cleverboy32

div.grandson {
    display:inline-block;
    width: 10px;
    height: 10px;
}
<div class="parent"><div class="child"><div class="grandson"></div></div></div>

第 52 题:怎么让一个 div 水平垂直居中

两相知 2022-05-04 13:46:26

return class extends Component 这句 怎解释?返回的是一个组件 还是类?

react 进阶之高阶组件

两相知 2022-05-04 04:44:20

上一步会获取到模块的压缩包地址(resolved 字段),npm 会用此地址检查本地缓存,缓存中有就直接拿,如果没有则从仓库下载。

有一个疑问,这里检查的是本地缓存.npm目录 还是 /node_modules目录 ?
貌似记得在 npm 中的某个版本中,即使 .npm目录 中存在缓存,npm 也会重新下载

第 20 题:介绍下 npm 模块安装机制,为什么输入 npm install 就可以自动安装对应的模块?

两相知 2022-05-02 05:34:45

感觉已经是第三遍学习js类型转换,好像又深入理解了些~

JavaScript 深入之头疼的类型转换(上)

两相知 2022-05-01 00:52:49

forEach是不能阻塞的,默认是请求并行发起,所以是同时输出1、4、9。

串行解决方案:

async function test() {
  for (let i = 0; i < list.length; i++) {
    let x = list[i]
    const res = await square(x)
    console.log(res)
  }
}

当然,也可以用 for of 语法,就是帅:

async function test() {
  for (let x of list) {
    const res = await square(x)
    console.log(res)
  }
}

还有一个更硬核点的,也是 axios 源码里所用到的,利用 promise 本身的链式调用来实现串行。

let promise = Promise.resolve()
function test(i = 0) {
  if (i === list.length) return
  promise = promise.then(() => square(list[i]))
  test(i + 1)
}
test()

第 160 题:输出以下代码运行结果,为什么?如果希望每隔 1s 输出一个结果,应该如何改造?注意不可改动 square 方法

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文