笔记-js核心基础

术语索引

  • 可枚举性: 可枚举是集合的属性,隐式要求每个元素都是唯一的,for ... in
  • 迭代: 可迭代 迭代是将输出做为输入,再次进行相同动作处理。for ...of
  • 递归: 自己调用自己,自己包含自己。从计算机角度讲,递归是迭代的特例

遍历、枚举、迭代
递归是重复调用函数自身实现循环。迭代是函数内某段代码实现循环,而迭代与普通循环的区别是:循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。

骚操作

  • 实现 sleep 阻塞目的:

    1. while()限定时间条件达到
    const expire = Date.now() + 1000
    while(Date.now()<expire)
    // after that, do something
    1. promise 异步
    new promise((reslove, reject) = > {
        setTimeout  (()=>{
            reslove()
        }, 2000)
    })

    冷知识

    赋值详详详详解
    神奇的JS连续赋值语句
    JS 赋值语句 永远返回值,声明语句 永远返回 undefined
    JavaScript 中赋值语句的返回值就是等号右边的值,例子中 obj.getThis 的值是一个匿名函数,非严格模式下 this 会指向 window

    var obj = {
      name: "My Object",
      getThis: function () {
        console.log(this);
      },
    };
    (obj.getThis = obj.getThis)(); // window
    //
    if (x = 10) // 会判断为10,隐式转换为true

   转载规则


《笔记-js核心基础》 Bryan Who 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
下一篇 
前端面试题2 前端面试题2
链接 JavaScript 解释下为什么接下来这段代码不是 IFE(立即调用的函数表达式)?function foo(){//code\... }()以 function 关键字开头的语句会被解析为函数声明,而函数声明是不允许直接运行的。只
2020-08-10
  目录