BOM及改变this指向
bom ( borwser object model 浏览器对象模型)
定义js操作浏览器的属性和方法
window.open(url way()) 中有两个参数
url代表打开的网页地址
way() 打开时方式
window.close() 关闭浏览器
注意事项:1.火狐不会关闭
2.谷歌直接关闭
3.ie 会提示用户是否关闭
浏览器详细信息:
window.navigator.useragent 后期靠它解决浏览器兼容
浏览器地址信息:
window.location (href 网络后面的完整地址) (?后面的叫参数)
window.history 记录浏览器访问历史
window.history.forward() 前进,最新的访问记录
window.history.back() 返回
函数的解析:
函数如果把它当作函数看,就只能起到函数的意义,可以封装,如果说我们把函数当作函数对象来看,就可以实现一些继承了
可以在控制台dir(fn) 可以发现在原型链上函数对象天生带 call() apply() bind() 三个方法,这三个方法可以改变函数内的this指向 (时函数对象天生自带的)
A.call(B,c,d) B取代了A中的this 然后把B给调用了
案例:
function add(a,b){
console.log(this)
return a+b
}
function jian(a,b){
return a-b
}
var s=add.call(jian,5,6) jian取代了add中的this,然后把add调用了
console.log(s)
var d=add.apply(jian,[5,6]) (通过上列便能看出,call于apply的区别, call是将参数赋给函数,apply将数组赋给函数)
console.log(d)
函数内的this:
1.一种当作方法来调用他this指向,前面的对象
2.一种当作函数来调用看函数归属谁,归属谁this就指向谁
瀑布流:
1.图片一直加载不完
2.前提条件:宽一样
BOM及改变this指向的更多相关文章
- 可以改变this指向的方法
this一般指向的是当前被调用者,但也可以通过其它方式来改变它的指向,下面将介绍三种方式: 1.call用作继承时: function Parent(age){ this.name=['mike',' ...
- this指向及改变this指向的方法
一.函数的调用方式决定了 this 的指向不同,但总的原则,this指的是调用函数的那个对象: 1.普通函数调用,此时 this 指向 全局对象window function fn() { conso ...
- 改变this指向的三种方法
call.apply.bind三者为改变this指向的方法. 共同点:第一个参数都为改变this的指针.若第一参数为null/undefined,this默认指向window call(无数个参数) ...
- js中改变this指向的call、apply、bind 方法使用
前言: 由于js 中this的指向受函数运行环境的影响,指向经常改变,使得开发变得困难和模糊,所以在封装sdk,写一些复杂函数的时候经常会用到this 指向绑定,以避免出现不必要的问题,call.ap ...
- $.on()方法和addEventListener改变this指向
jQuery $.on()方法和addEventListener改变this指向 标签(空格分隔): jQuery JavaScript jQuery $.on() jq的绑定事件使用$([selec ...
- (三十七)js改变this指向的方法
最近又遇到了JacvaScript中的call()方法和apply()方法,而在某些时候这两个方法还确实是十分重要的,那么就让我总结这两个方法的使用和区别吧. 1.改变函数内部的this指向的三种方法 ...
- setTimeout改变this指向(****************************************)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 前端js中this指向及改变this指向的方法
js中this指向是一个难点,花了很长时间来整理和学习相关的知识点. 一. this this是JS中的关键字, 它始终指向了一个对象, this是一个指针; 参考博文: JavaScript函数中的 ...
- this(this的4种指向和改变this指向的方式)
this是Javascript语言的一个关键字. 随着函数使用场合的不同,this的值会发生变化.但是有一个总的原则,那就是this指的是,调用函数的那个对象. 1.this指向的形式4种 a.如果是 ...
随机推荐
- Runtime的基本运用
一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.) 1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数); [runti ...
- ArcEngine 9.3与64位操作系统 冲突
ArcEngine 9.3与64位操作系统 冲突 2011年03月30日 星期三 11:13 错误信息: 未处理 System.TypeInitializationException Message ...
- 201621123010《Java程序设计》第9周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题集题目) 1.1 实验总结.并回答:列举至 ...
- 2.3 linux中的信号分析 阻塞、未达
信号的阻塞.未达: linux中进程1向进程2发送信号,要经过内核,内核会维护一个进程对某个信号的状态,如下图所示: 当进程1向进程2发送信号时,信号的传递过程在内核中是有状态的,内核首先要检查这个信 ...
- 解决Android adjustresize全屏无效问题
最近在做一个即时通信的聊天页面时,页面要求要全屏显示,这个时候android:windowSoftInputMode = "adjustResize"属性就不起作用了,如果使用an ...
- 【linux】如何退出shell终端
退出shell终端: exit + 回车即可 清除当前屏幕信息 clear 不过clear只是将之前的命令向上隐藏啦...
- fullPage的使用
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- hdu2064
hdu2064 汉诺塔变形,数学题 #include<stdio.h> ]; int main(){ A[]=; int i; ;i<=;i++){ A[i]=*A[i-]+; } ...
- socat 广播以及多播
官方文档有一个关于组播,多播的例子挺不错,记录下 多播客户端以及服务器 注意地址修改为自己的网络 server socat UDP4-RECVFROM:6666,ip-add-membership=2 ...
- js 验证代码部分的简单实现
接上面的文章. 我们已经简单的设计了关于如何进行处理了,但是如何进行校验呢,代码也是比较简单的因为我们使用的是asp.net 简单并且功能强大. 我们同样使用的是HttpResponse,简单的模拟代 ...