Use for…of instead of manual iteration.

Unfortunately, UglifyJS can’t handle for…of, though.
This commit is contained in:
Mike Bostock 2014-10-16 10:06:17 -07:00
Родитель b943746b7e
Коммит 594c2d24aa
5 изменённых файлов: 25165 добавлений и 9002 удалений

Просмотреть файл

@ -17,14 +17,16 @@ src/start.js: package.json bin/start
d3.zip: LICENSE d3.js d3.min.js
zip $@ $^
# node_modules/.bin/smash src/d3.js | node_modules/.bin/uglifyjs - -b indent-level=2 -o $@
d3.js: $(shell node_modules/.bin/smash --ignore-missing --list src/d3.js) package.json
@rm -f $@
node_modules/.bin/smash src/d3.js | node_modules/.bin/uglifyjs - -b indent-level=2 -o $@
node_modules/.bin/smash src/d3.js > $@
@chmod a-w $@
# bin/uglify $< > $@
d3.min.js: d3.js bin/uglify
@rm -f $@
bin/uglify $< > $@
cat $< > $@
%.json: bin/% package.json
@rm -f $@

21418
d3.js поставляемый

Разница между файлами не показана из-за своего большого размера Загрузить разницу

12705
d3.min.js поставляемый

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -25,18 +25,24 @@ d3_class(d3_Map, {
return this._.delete(key + "");
},
keys: function() {
var i = this._.keys(), k, keys = [];
while (!(k = i.next()).done) keys.push(k.value);
var keys = [];
for (var key of this._.keys()) {
keys.push(key);
}
return keys;
},
values: function() {
var i = this._.values(), v, values = [];
while (!(v = i.next()).done) values.push(v.value);
var values = [];
for (var value of this._.values()) {
values.push(value);
}
return values;
},
entries: function() {
var i = this._.entries(), e, entries = [];
while (!(e = i.next()).done) entries.push({key: e[0], value: e[1]});
var entries = [];
for (var entry of this._) {
entries.push({key: entry[0], value: entry[1]});
}
return entries;
},
size: function() {
@ -46,9 +52,8 @@ d3_class(d3_Map, {
return !!this._.size;
},
forEach: function(f) {
var that = this;
this._.forEach(function(key, value) {
f.call(that, key, value);
});
for (var entry of this._) {
f.apply(this, entry);
}
}
});

Просмотреть файл

@ -21,8 +21,10 @@ d3_class(d3_Set, {
return this._.delete(value + "");
},
values: function() {
var i = this._.values(), v, values = [];
while (!(v = i.next()).done) values.push(v.value);
var values = [];
for (var value of this._.values()) {
values.push(value);
}
return values;
},
size: function() {
@ -32,9 +34,8 @@ d3_class(d3_Set, {
return !!this._.size;
},
forEach: function(f) {
var that = this;
this._.forEach(function(value) {
f.call(that, value);
});
for (var value of this._) {
f.call(this, value);
}
}
});