BOM学习

ECMAScript的数据属性

1、[[Configurable]]、[[Enumberable]]、[[Writable]]、[[Value]]
如果直接在对象上定义属性他们的默认值是:true;
2、通过调用Object.defineProperty()方法创建新属性他们的默认值为:false;
例子:
//默认为true的情况
var person = {name:"Nase"};
Object.defineProperty(person,"name",{
//默认为writable:true,
value:"Nase"
});
alert(person.name);
person.name = "glass";
alert(person.name);
输出:Nase,glass

//默认为false的情况
var person = {};
Object.defineProperty(person,"name",{
//默认为writable:false,
value:"Nase"//新建一个name:"Nase";属性
});
alert(person.name);
person.name = "glass";
alert(person.name);
输出:Nase,Nase

top

返回最顶层的祖先窗体

获取浏览器窗口大小

innerWidth / innerHeight,

outerWidth / outerHeight,

document.documentElement.clientWidth / document.documentElement.clientHeight,

document.body.clientWidth / document.body.clientWidth

setInterval,setTimeout

一般认为,使用setTimeout来代替setInterval是一种最佳的方式
原因:setInterval可能会出现在前一个调用结束之前启动。

总结

BOm对象:window、top、parent、location、navigator、screen、history

你可能感兴趣的:(BOM学习)