js基础02

BOM

浏览器对象模型,用来完成对浏览器的操作 作为window对象的属性保存

window 代表整个浏览器的窗口,window是网页中的全局对象

navigator 代表当前浏览器的信息,通过该对象可以识别不同的浏览器

location 代表当前浏览器的地址栏信息

history 代表浏览器的历史纪录,由于隐私不能获取到历史记录,只能操作向前或向后操作,在当次访问有效

screen 代表用户的屏幕信息

navigator

通过useragent 不能判断,可以通过一些浏览器中特有的对象,来判断浏览器的信息,比如:activexobject

var ua=navigator.UserAgent;
//正则判断 i表示忽略大小写
if(/firefox/i.test(ua)){
    alert("火狐")
}else if(/chrome/i.test(ua)){
    alert("chrome")
}else if(/msie/i.test(ua)){
    alert("ie")
}else if("ActiveXObiect" in window){
    alert("ie11")
}
history

操作向前或向后操作

history.back()

history.forward()

history.go(-1)//会退一个url

location

获取地址栏信息,即当前页面的url

assign()用来跳转新的url 作用和修改location效果一致

reload()用于重新加载页面

定时器

setinterval() 定时调用,可以将一个函数,每隔一段时间执行一次

参数:1.回调函数 2.每次调用的事件,单位是毫秒

会返回一个number类型的数据timer 这个数字是定时器的唯一标识 可以用clearInterval()关闭

var num=1;
var timer=setInterval(function(){count.innerHTML=num++;},1000);
clearInterval(timer)

延时调用

延时调用一个函数不马上执行,而是隔一段时间之后执行,而且只会执行一次

var num=1;
var timer=setTimeout(function(){count.innerHTML=num++;},1000);
clearTimeout(timer)

类样式

使用obj.style.属性来改样式,会导致浏览器渲染次数过多。

故通过修改元素的class属性来间接的修改样式,浏览器只需要重新渲染一次;并使得表现和行为进一步分离

<body>
    <div box id="box1" class="b1"></div>
</body>
<style>
    .b1{
        backgroundcolor="red"
    }
    .b2{
        width=100px
    }
</style>

<script>
	var box1=doucument.getElementbyid("box1")
    box1.style.backgroundcolor="yellow";  /*通过修改style来修改样式*/
    box1.className += " b2"/*通过修改class属性来修改样式*/
</script>

json

js中的对象只有js自己认识,其他语言都不认识 故创建了json json其实就是一个特殊格式的字符串 这个字符串可以被任意语言所识别,并且可以转化成任意语言的对象,用于数据的交互

json字符串中的属性名必须加双引号

json分类: 1.对象 {} 2.数组[]

json中允许的值:字符串 数值 布尔值 null 对象 数组

var obj = '{"name":"张三","age":18,"gender":"male"}' /*对象*/
var arr = '[1,2,3,"hello",true]'

JSON.stringify() 将js对象转化为json字符串

JSON.parse() 将json字符串转化为js对象

var obj = '{"name":"张三","age":18,"gender":"male"}'
var o=JSON.parse(obj)
console.log(o.name)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值