// META: title=FormData: foreach
var fd = new FormData();
fd.append('n1' , 'v1' );
fd.append('n2' , 'v2' );
fd.append('n3' , 'v3' );
fd.append('n1' , 'v4' );
fd.append('n2' , 'v5' );
fd.append('n3' , 'v6' );
fd.delete ('n2' );
var file = new File(['hello' ], "hello.txt" );
fd.append('f1' , file);
var expected_keys = ['n1' , 'n3' , 'n1' , 'n3' , 'f1' ];
var expected_values = ['v1' , 'v3' , 'v4' , 'v6' , file];
test(function () {
var mykeys = [], myvalues = [];
for (var entry of fd) {
assert_equals(entry.length, 2,
'Default iterator should yield key/value pairs' );
mykeys.push(entry[0]);
myvalues.push(entry[1]);
}
assert_array_equals(mykeys, expected_keys,
'Default iterator should see duplicate keys' );
assert_array_equals(myvalues, expected_values,
'Default iterator should see non-deleted values' );
}, 'Iterator should return duplicate keys and non-deleted values' );
test(function () {
var mykeys = [], myvalues = [];
for (var entry of fd.entries()) {
assert_equals(entry.length, 2,
'entries() iterator should yield key/value pairs' );
mykeys.push(entry[0]);
myvalues.push(entry[1]);
}
assert_array_equals(mykeys, expected_keys,
'entries() iterator should see duplicate keys' );
assert_array_equals(myvalues, expected_values,
'entries() iterator should see non-deleted values' );
}, 'Entries iterator should return duplicate keys and non-deleted values' );
test(function () {
var mykeys = [];
for (var entry of fd.keys())
mykeys.push(entry);
assert_array_equals(mykeys, expected_keys,
'keys() iterator should see duplicate keys' );
}, 'Keys iterator should return duplicates' );
test(function () {
var myvalues = [];
for (var entry of fd.values())
myvalues.push(entry);
assert_array_equals(myvalues, expected_values,
'values() iterator should see non-deleted values' );
}, 'Values iterator should return non-deleted values' );
Messung V0.5 C=92 H=97 G=94
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland