BOM
- 浏览器对象模型
- BOM可以使我们通过js来操作浏览器
- BOM对象
window
- 代表的是整个浏览器的窗口,同时window也是网页中的全局对象
navigator
- 代表的当前浏览器的信息,通过该对象可以识别不同的浏览器
大部分信息已经不能帮助我们识别浏览器
location
- 代表当前浏览器的地址栏信息,通过location可以获取地址栏信息,或者操作浏览器跳转页面
history
- 代表浏览器的历史记录,可以通过该对象来操作浏览器的历史记录
可以用来操作浏览器向前或者向后翻页
back()
回退到上一个页面
forward()
跳到下一个页面
screen
- 不常用,代表用户的屏幕信息,通过该对象可以获取到用户的显示器的相关信息
判断浏览器
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
if (isIE) {
var reIE =new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion =parseFloat(RegExp["$1"]);
if (fIEVersion ==7) {
alert('ie7');
}else if (fIEVersion ==8) {
alert('ie8');
}else if (fIEVersion ==9) {
alert('ie9');
}else if (fIEVersion ==10) {
alert('ie10');
}else {
alert('ie6');//IE版本<=7
}
}else if (isEdge) {
alert('edge');;//edge
}else if (isIE11) {
alert('ie11'); //IE11
}else {
alert('no ie');//不是ie浏览器
if(/firefox/i.test(userAgent)){
alert('火狐浏览器')
}else if (/chrome/i.test(userAgent)) {
alert('谷歌浏览器')
}
}
定时器
setInterval()
-定时调用
-可以将函数.每隔一段时间调用一次
-参数
1.回调函数
2.每次调用间隔的时间,单位是毫秒
setTimeout()
-延时调用
-函数不马上执行,而是隔一段时间之后再执行
-参数
1.回调函数
2.等待调用的时间,单位是毫秒
setInterval()和setTimeout()的区别
setInterval():方法可按照指定的时间周期来调用函数(以毫秒为单位)
语法:setInterval(函数表达式,毫秒数);
setInterval():会调用多次,直到关闭定时器,或者窗口被关闭,由 setInterval()返回的ID值可用作clearInterval()方法的参数。
setTimeout():方法用于在指定毫秒数后再调用函数(以毫秒为单位)
语法:setTimeout(函数表达式,毫秒数);
setTimeout()只执行函数一次,如果关闭需要使用clearTimeout()。
JavaScript Object Notation(js 对象 表示法)
json 就是一个特殊格式的字符串,这个字符串可以被任意的语言所识别,并且可以转换为任意语言中的对象
json 在开发中主要用来做数据交互
json和js对象的格式一样,只不过json字符串中的属性名必须加双引号
json对象在ie7以下的浏览器中不支持,
json分类
1.对象{}
2.数组[]
json中允许的值
1.字符串 string(在双引号中)
2.数值 number(整数或浮点数)
3.布尔值 boolean(true 或 false)
4.null
5.对象 {}(在花括号中)
6.数组 array(在方括号中)
JSON.parse() 将一个 JSON 字符串转换为 JavaScript 对象。
JSON.stringify() 将 JavaScript 值转换为 JSON 字符串。
网友评论