• mfist
    2019-04-04
    遍历了下window上面的全局对象,上面有Symbol.iterator的原生属性有15个,主要Array Set Map String相关的。当然还有很多宿主环境提供的全局对象有Symbol.iterator属性,他们有个共同的特征:都是些集合性质的数据结构。
    0: "Array"
    1: "String"
    2: "Uint8Array"
    3: "Int8Array"
    4: "Uint16Array"
    5: "Int16Array"
    6: "Uint32Array"
    7: "Int32Array"
    8: "Float32Array"
    9: "Float64Array"
    10: "Uint8ClampedArray"
    11: "BigUint64Array"
    12: "BigInt64Array"
    13: "Map"
    14: "Set"
    展开
    
     25
  • timik
    2019-05-07
    老师,我记得有的书上或者是资料上说超过五次的if else 就最好用 switch case来替换。这样效率更好。您这里为什么说不用这个呢?
     1
     7
  • 阿成
    2019-04-02
    大概就这些?
    Array, Map, Set, String, Float32Array, Float64Array, Int8Array, Int16Array, Int32Array, Uint8Array, Uint16Array, Uint32Array, Uint8ClampedArray
    
     7
  • Chuck
    2019-06-10
    Object.getOwnPropertyNames(window).filter(prop => {
        return window[prop] && window[prop].prototype && window[prop].prototype[Symbol.iterator]
    })

    Array,String,Uint8Array,Int8Array,Uint16Array,Int16Array,Uint32Array,Int32Array,Float32Array,Float64Array,Uint8ClampedArray,BigUint64Array,BigInt64Array,Map,Set,SourceBufferList,RTCStatsReport,Plugin,PluginArray,MimeTypeArray,MIDIOutputMap,MIDIInputMap,AudioParamMap,URLSearchParams,TouchList,TextTrackList,TextTrackCueList,StyleSheetList,StylePropertyMapReadOnly,StylePropertyMap,SVGTransformList,SVGStringList,SVGPointList,SVGNumberList,SVGLengthList,RadioNodeList,NodeList,NamedNodeMap,MediaList,Headers,HTMLSelectElement,HTMLOptionsCollection,HTMLFormElement,HTMLFormControlsCollection,HTMLCollection,HTMLAllCollection,FormData,FileList,DataTransferItemList,DOMTokenList,DOMStringList,DOMRectList,CSSUnparsedValue,CSSTransformValue,CSSStyleDeclaration,CSSRuleList,CSSNumericArray,webkitSpeechGrammarList,KeyboardLayoutMap,MediaKeyStatusMap
    展开
    
     6
  • Format
    2019-04-02
    请问老师后面可以讲讲,例如手淘购物车这种较复杂的功能吗?详细的那种,封装方法,兼容,处理特殊情况之类的
    
     2
  • 许童童
    2019-04-02
    Some built-in types have a default iteration behavior, while other types (such as Object) do not. The built-in types with a @@iterator method are:
    Array.prototype[@@iterator]()
    TypedArray.prototype[@@iterator]()
    String.prototype[@@iterator]()
    Map.prototype[@@iterator]()
    Set.prototype[@@iterator]()
    展开
    
     2
  • 尤璐洁
    2019-11-07
    老师可以讲讲arguments吗,它是挂在哪里的呢,是个可迭代对象,但是不知道它是哪个的属性

    作者回复: arguments是函数创建的环境记录上的一个变量,这个东西比较特殊的地方是它跟参数的绑定关系,其它没什么。

    看MDN好了

    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments

    
     1
  • K4SHIFZ
    2019-04-02
    为什么和第十九节中的分类不一样啊?
    
     1
  • 固执的鱼wu
    2020-01-08
    let 和 const 声明虽然看上去是执行到了才会生效,但是实际上,它们还是会被预处理,为什么在const a=1之前console.log(a)是报错,而不是吧报undefinded呢
    
    
  • 培根熏肉
    2019-11-21
    Switch那么好看难道我要写一堆if else??不明白原文说没有用switch的意义在哪里
     1
    
  • 洛克不菲勒
    2019-09-11
    for(let e of [1, 2, 3, 4, 5])
        console.log(e);
    老师你好,注意到文中有这样的写法,for()后面没有大括号这种写法好吗?
    一直都有这样的疑问,if语句也有这样的问题

    作者回复: 反正JS有这个用法,至于好不好,每个人有不同的审美,不过多数时候,这由你团队的代码规范决定。

     1
    
  • lsy
    2019-08-01
    console.log('有 iterator:');
          for (let key in window)
            window[key] && window[key][Symbol.iterator] && console.log(key);

          console.log('实例有 iterator:');
          Object.getOwnPropertyNames(window).forEach(
            key =>
              window[key] &&
              window[key]['prototype'] &&
              window[key]['prototype'][Symbol.iterator] &&
              console.log(key)
          );
    展开
    
    
  • 渴望做梦
    2019-07-29
    winter老师,这个异步生成器函数是个什么东东啊,从网上搜了一下,也没找到相关介绍。

    作者回复: 搜 async generator function

     1
    
  • 润群
    2019-06-28
    关于switch和ifelse的效率我有个疑问呢,假设ifelse的判断很多,然后判断到末尾才找到匹配的项,这样的话是不是比switch多了好多判断呢,因为我理解的switch不是只判断一次么?

    作者回复: 说了半天这点性能意义不大。

    
    
  • break
    2019-06-14
    感觉这文章应该从后往前看😆
    
    
  • 让时间说真话
    2019-04-12
    Map,set,arguments
    
    
  • 翰弟
    2019-04-04
    Array、Map、Set、String、TypedArray、函数的arguments、NodeList对象
    
    
  • qqq
    2019-04-03
    catch 中可以使用 var 重新声明
    
    
  • K4SHIFZ
    2019-04-02
    请问老师,规范中的Statement和Declaration到底有什么区别?不都是声明的意思吗?

    作者回复: Statement是语句,Declaration是声明,但是我觉得这个分类不好,因为语句里还有var语句也是声明性质的。

    
    
我们在线,来聊聊吧