静待花开

文章 评论 浏览 29

静待花开 2022-05-04 13:57:51

在CSS-tricks发现了下面的链接,这个应该算是debounce的根儿了。文中作者给出了一个每行都带注释的版本,有兴趣的小伙伴可以研究下。
Debouncing Javascript Methods

第 3 题:什么是防抖和节流?有什么区别?如何实现?

静待花开 2022-05-04 13:56:21

我的核心思想是使用 split,假设未匹配到返回-1

let findIndex = (S, T) => {
  let index = -1
  if (!T.length || T.length > S.length) return index // T 为空字符串或 T 的长度大于 S 均直接返回-1
  const arr = S.split(T)
  if (arr.length > 1) index = arr[0].length
  return index
}

findIndex('FishPlusOrange', 'Plus') // 4
findIndex('FishPlusOrange', 'sulP') // -1

需要注意的是,在以上算法中,如果字符串 S 中存在多个字符串 T,仅返回第一个的位置

第 71 题: 实现一个字符串匹配算法,从长度为 n 的字符串 S 中,查找是否存在字符串 T,T 的长度是 m,若存在返回所在位置

静待花开 2022-05-04 13:55:21

利用构造函数

function toObject(entry, output = {}, k_name = '') {
  for (let key in entry) {
    if (entry[key].constructor == Object){
      toObject(entry[key], output, k_name ? `${k_name}.${key}` :  `${key}`);
    }else{
      output[`${k_name}.${key}`] = entry[key];
    }
  }
  return output
}
toObject(entry)

第 111 题:编程题,写个程序把 entry 转换成如下对象

静待花开 2022-05-04 07:54:31

@btea 难道是因为我以前 PPT 做得比较多的缘故吗?因为 PPT 和 keynote 里将多个元素组成一起,用的就是名为 "成组" 的功能

TypeScript 之 Object Types

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

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