2017-08-06 2 views
2
it('`values()` returns an iterator', function() { 
     const arr = ['k', 'e', 'y']; 
     const iterator = arr.values(); 
     iterator.next(); 
     iterator.next(); 
     terator.next(); 

     assert.deepEqual(iterator.next(), {value: void 0, done: true}); 
    }); 

Es hat den Test nicht bestanden. Ich versuchte es arr.values() auf Chrom-Konsole und bekam den gleichen Fehler. War es nicht eine standardisierte Array-Methode?warum 'arr.values ​​()' einen Fehler abgibt "arr.values ​​ist keine Funktion"

+0

Es gibt ein Web-compat Problem mit der ES6 Standardmethode zu implementieren. Sie können jedoch 'arr [Symbol.iterator]()' verwenden, um dasselbe zu erhalten – Bergi

Antwort

2

array.values ​​ist ECMAScript 2015 (ES6) - derzeit in den meisten Browsern nicht implementiert.

Von

enter image description here

Von Mozilla MDN