indexOf注意事项
//indexOf对整型和string类型做了区分。
var a = [1,2,3,4,5];
var b = ['1','2','3','4','5'];
a.indexOf(2);//return-->1
a.indexOf('2');//return-->-1
b.indexOf(2);//return-->-1
b.indexOf('2');//return-->1
forEach,every,some
forEach 不能break;
every 当遇到第一个false return 后结束,并返回false,否则持续遍历后返回true。
some 当遇到第一个true return 后结束,并返回true,否则持续遍历后返回false。
setTimeout(fn(),0)
如果以0毫秒的超时时间来调用setTimeout(),那么指定的函数不会立刻执行。相反会把它放到队列中,等到前面处于等待状态的事件处理程序全部执行完成后,在“立即调用它”。
location
//跳转到baidu
location = "https://www.baidu.com";
//https://www.baidu.com/page2.html
location = "page2.html";
//跳转到指定的id,top是个特殊的例子,如果没有id为top的元素,将会跳到文档开始处。
location = "#top";
history
- 子窗口的浏览历史会按时间顺序穿插在主窗口的历史中。这意味着在主窗口调用history.back()可能会导致其中一个子窗口往回跳转到前一个显示的文档,但主窗口保留当前状态不变。
navigator
navigator.onLine属性表示浏览器当前是否链接到网络。
窗体之间的关系
- 新窗口具有opener属性,该属性可以打开它的原始窗口
- 自己窗口和窗体引用为window或self
- var childFrame =
- document.getElementById(‘f1’).contentWindow;
//iframe元素有contentWindow属性,引用该窗体的Window对象。 - 反向获取iframe元素
var elt = document.getElementById('f1');
var win = elt.contentWindow;
win.frameElement === elt //对于帧来说永远是true
window.frameElement === null //对于顶级窗口来说永远是true
- Window对象拥有一个frames属性,它引用自身包含的窗口或窗体的子窗体。