js-BOM

私有变量:

1、在一个实例上调用setName()会影响所有的实例

BOM:

1、全局变量不能通过delete操作符删除,而直接在window对象上定义的属性可以

2、尝试访问为声明的变量会抛出错误,但通过查询window对象,可以知道某个可能未声明的变量是否存在

var newValue=oldValue;  //错误的

var newValue=window.oldValue;  //undefined

3、除非最高层窗口是通过window.open()打开的,否则window对象的name属性

使用moveTo()和moveBy()方法将窗口精确的移到一个新的位置;

moveTo()的两个参数接收的是新位置的x与y的坐标值,而moveBy()接收的是在水平以及垂直方向上移动的像素数-----不适用于框架,只能对最外层的window对象适用

使用resizeTo()与resizeBy()调整浏览器窗口的大小:

resizeTo()接收浏览器窗口的新宽度以及新高度;resizeBy()接收新窗口与原窗口的宽度与高度之差

close()方法可以关闭新打开的窗口

将新创建的标签页的opener属性设置为null,即表示在单独的进程中运行新的标签页,不需要与打开它的标签页通信

4、

  1. 超时调用:使用window对象的setTimeOut()方法,接收两个参数,一个是要执行的代码(字符串或函数),还有一个是以毫秒表示的时间(即在执行代码之前要等待多少毫秒),调用该方法之后会返回一个数值ID,表示超时调用,通过它来取消超时调用clearTimeout()取消

var timeId=setTimeout(function() {

      alert("hi");

},1000);

//取消

clearTimeout(timeId);

  1. 间歇调用:按照指定的时间间隔重复执行代码

setInterval(字符串或函数,每次执行之前需要等待的毫秒数);

clearInterval()

var num=0;

var max=10;

var intervalId=null;

function increameNumber(){

     num++;

     if(num==max){

           clearInterval(intervalId);

           alert("Done");

     }

}

intervalId=setInterval(increameNumber,500)

     //通过超时调用实现

    var num=0;

var max=10;

function increameNumber(){

      num++;

      if(num<max){

       setTimeout(increameNumber,500);

      }else{

           alert("Done");

      }

}

setTimeout(increameNumber,500);

5、确认框:confirm()

6、Location(提供了与当前窗口加载的文件有关的信息,还提供了一些导航信息)

既是window对象的属性,也是document对象的属性

就是说window.location与document.location引用的是统一对象

7、改变浏览器的位置:location.assign(“网址”);

location.href(“网址”);

reload()方法是重新加载当前显示的页面,一般放在代码的最后一行;reload()--可能从缓存中重新加载        reload(true)----从服务器中重新加载

8、history对象保存着用户上网的历史记录,提供一个go方法,可以在用户的历史记

录中任意跳转

history.back()后退一页;forward()前进一页;go(-1)后退一页,go(1)前进一页

9、IE9之后,对所有的DOM对象都返回“function”  

原文地址:https://www.cnblogs.com/zhanghuiyun/p/5129139.html