<!DOCTYPE html >
<meta charset=utf-8>
<title >Test for named getter enumerability</title >
<script src="/resources/testharness.js" ></script >
<script src="/resources/testharnessreport.js" ></script >
<div id="log" ></div >
<script >
/* global test, assert_equals, assert_true, assert_false, assert_not_equals */
test(function() {
var list = document.getElementsByTagName("div" );
var desc = Object .getOwnPropertyDescriptor(list, "0" );
assert_equals(typeof desc, "object" , "Should have a '0' property" );
assert_true(desc.enumerable, "'0' property should be enumerable" );
desc = Object .getOwnPropertyDescriptor(list, "log" );
assert_equals(typeof desc, "object" , "Should have a 'log' property" );
assert_false(desc.enumerable, "'log' property should not be enumerable" );
}, "Correct getOwnPropertyDescriptor behavior" );
test(function() {
var list = document.getElementsByTagName("div" );
var props = [];
for (var prop in list) {
props.push(prop);
}
assert_not_equals(props.indexOf("0" ), -1, "Should enumerate '0'" );
assert_equals(props.indexOf("log" ), -1, "Should not enumerate 'log'" );
}, "Correct enumeration behavior" );
test(function() {
var list = document.getElementsByTagName("div" );
var props = Object .keys(list);
assert_not_equals(props.indexOf("0" ), -1, "Keys should contain '0'" );
assert_equals(props.indexOf("log" ), -1, "Keys should not contain 'log'" );
}, "Correct keys() behavior" );
test(function() {
var list = document.getElementsByTagName("div" );
var props = Object .getOwnPropertyNames(list);
assert_not_equals(props.indexOf("0" ), -1,
"own prop names should contain '0'" );
assert_not_equals(props.indexOf("log" ), -1,
"own prop names should contain 'log'" );
}, "Correct getOwnPropertyNames() behavior" );
</script >
Messung V0.5 C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland