<!doctype html>
<meta charset=utf-8>
<title>Indexed properties of the window object (non-strict mode)</title>
<link rel="author" title="Ms2ger" href="ms2ger@gmail.com">
<link rel="help" href="https://html.spec.whatwg.org/multipage/#window">
<link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-window-item">
<link rel="help" href="https://heycam.github.io/webidl/#getownproperty">
<link rel="help" href="https://heycam.github.io/webidl/#defineownproperty">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id=log></div>
<iframe></iframe>
<script>
test(function() {
  assert_false("-1" in window, "-1 not in window");
  assert_equals(window[-1], undefined);
  window[-1] = "foo";
  assert_equals(window[-1], "foo");
});
test(function() {
  window[0] = "foo";
  assert_equals(window[0],
                document.getElementsByTagName("iframe")[0].contentWindow);
});
test(function() {
  window[1] = "foo";
  assert_equals(window[1], undefined);
});
test(function() {
  var proto = Window.prototype;
  [-1, 0, 1].forEach(function(idx) {
    assert_false(idx in proto, idx + " in proto");
  });
});
</script>
