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.如果是 ...
随机推荐
- Linux便捷命令
快捷键: tab:命令和文件名称补齐功能快捷键 Ctrl + c:中断当前程序 Ctrl + d:退出当前终端 求助快捷键: man:manual的简写,如man ls man命令: / string ...
- anu - children
import { _flattenChildren } from "./createElement"; export const Children = { only(childre ...
- 序列化 NSKeyedArchiver,NSPropertyListSerialization
到目前为止,看到oc实现的序列化方式有两种:NSKeyedArchiver,NSPropertyListSerialization. 在这两种序列化方式中,NSData都是序列化的目标.两种方式的不同 ...
- android短彩信附件机制
将一些认识写下来,和大家交流一下,同时也方便自己复习. 用户可以通过附件按钮,添加附件.以添加幻灯片为例: 如果点击幻灯片,会走如下代码: ComposeMessageActivity.java pr ...
- 【Genymotion】add a new virtual device 失败
Genymotion 新增虚拟设备(模拟器)时,由于网络原因,总是下载失败,如图: 下载失败提示“Unable to create virtual device: Connection timeout ...
- 使用git错误日志
错误日志 pull错误 将远程仓库内容pull下来的过程中,碰到了拒绝合并两个不相关的历史,所以无法下载,同样的也无法push 但是我的东西明明是从组织里克隆下来的,只是做了一些修改 后来我我尝试不替 ...
- iOS7,iOS8和iOS9的区别
iOS7,iOS8和iOS9的区别:iOS7.0 1.iOS 7是iOS面世以来在用户界面上做出改变最大的一个操作系统.iOS 7抛弃了以往的拟物化设计,而采用了扁平化设计. 苹果在重新思考 iOS ...
- BZOJ4897: [Thu Summer Camp2016]成绩单【DP of DP】
Description 期末考试结束了,班主任L老师要将成绩单分发到每位同学手中.L老师共有n份成绩单,按照编号从1到n的顺序叠 放在桌子上,其中编号为i的成绩单分数为w_i.成绩单是按照批次发放的. ...
- test20181015 B君的第二题
题意 分析 考场85分 用multiset暴力,由于教练的机子飞快,有写priority_queue水过了的人. #include<cstdlib> #include<cstdio& ...
- OracleDesigner学习笔记1――安装篇
OracleDesigner学习笔记1――安装篇 QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一. 前言 Oracle是当 ...