Js中级复习
JS中级复习——
1,this 就是js的关键字
用途:指向某一个对象
如何判断this指向:
函数(方法)内——
一种以函数的方式调用(不带.)this指向window
一种以方法的形式调用(函数名前面带.)this指向点前面的
函数(方法)外
this指向window
this指向的特例:
自调用函数的this都是window
定时器里的this指向window
事件里面的this指向出发事件的元素
构造函数里的this指向他的实例
2,怎样替换掉函数内的this
call();apply();bind() 只能是函数(方法),或者是函数对象
3,面向对象:
单例模式——
var obj={ }
工厂模式——
function fn(){
var obj={ }
obj.name=“zhang”
return obj
}
构造函数——
三个特点:
函数名首字母必须大写;函数属性前面加this;函数调用用new关键字;
function person(name){
this.name=name
}
var zhang=new person(“zhang”)
原型分析:
每个构造函数天生自带一个prototype属性,叫原型,他是一个对象,存放父类可继承的属性
函数内的属性是子对象,天生就是继承的,不需要任何操作
prototype上的属性是继承给予对象的,子对象必须通过__proto__(原型链)来查找
每个子对象都有一个__proto__,他指向父类的原型
原型链:
子对象在操作一个属性时,首先看属性是不是私有的,私有的就直接使用,没有就通过__proto__向子对象的父类查找,父类有就使用,没有就用父类的__proto__继续向上查找,直到基类object为止,没有就undefined。
4,作用域或作用域链:
浏览器客户端给js一个生存环境
js代码在执行之前,浏览器会给js一个生存环境window;会分成两个模块,一个内存,一个执行;内存模块在代码执行之前就完成了,存放关键字var和function,每存放一个变量就会生成一个内存地址
赋值:
基本数据类型---简单的赋值
引用数据类型---把内存地址赋值给变量
基本数据类型:
基本数据类型在赋值的时候,就是简单的操作值
引用数据类型:
引用数据类型在赋值的时候,把内存地址给变量,在操作引用数据类型的时候,首先通过内存地址去找到里面的东西,然后操作
(引用数据类型在赋值的时候,首先会开辟一个堆内存,存放里面的代码块,然后会把内存地址赋值给变量,在操作这个变量的时候,会通过内存地址去查找,然后修改里面的东西)
引用数据类型:
object array function
object,array 以键值对形式存放
function以字符串形式存放
scroll:
我们学习的client和offset,scrollwidth和 scrollheight 只读
scrolltop,scrollleft,可读可写属性
scrolltop最小值是0,存在边界值,当它为0是回到容器的顶部
最大值是真是高度----当前容器一屏幕的高度,scrollheight,clientheight
函数中止用return
for循环中止用break
Js中级复习的更多相关文章
- 11-22 JS中级复习
1.this js的关键字, 用途:指向某一个对象. 如何判断this指向 函数(方法)内 一种以函数的方式调用(不带.) this指向winodw 一种以方法的形式调用(函数名前面带.)this指向 ...
- codefordream 关于js中级训练
中级训练接着就紧锣密鼓的开始了. 首先是关于变量,变量的作用是给一个数据值标注名称. 注:JavaScript中变量名,函数名,参数名的命名规范:至少由字母,下划线,美元符号,数字其中的一种组成,但不 ...
- JS基础 复习: Javascript的书写位置
爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...
- 我的JS 中级学习篇
在codefordream上进入中级学习后,感觉立马从js的基础学习往前跳了好远,上面的东西好像都是第一次看到一样.这时候才发现,说来也曾接触过js,但是这时候才发现对js的认识就停在知道两点:js中 ...
- js中级6
1.动画 (1)Css样式提供了运动 过渡属性transition 从一种情况到另一种情况叫过渡 transition:time linear de ...
- js中级小知识1
首先我们复习之前的小知识,本期博客与之前有关 js数据类型 基本数据类型:string undefined null boolean numbe ...
- JS基础复习
js基础语法 Netcape js基础语法规范(ECMAScript1,2,3,3.1,5(IE9),6 ES ES6=es2015) DOM BOM ...
- JS高级---复习
复习 面向过程和面向对象都是编程的思想, 方式不一样 面向过程: 凡事都是亲力亲为, 所有的代码都要自己写, 每一步都要很清楚, 注重的是过程 面向对象: 执行者成为指挥者, 只要找对象, 然后让对象 ...
- JS中级 - 02:表单、表格
getElementsByTagName() getElementsByTagName() 方法可返回带有指定标签名的对象的集合. getElementsByClassName() 返回文档中所有指定 ...
随机推荐
- Peekaboo(2019年上海网络赛K题+圆上整点)
目录 题目链接 题意 思路 代码 题目链接 传送门 题意 你的位置在\(O(0,0)\),\(A\)的位置为\((x_1,y_1)\),\(B\)的位置为\((x_2,y_2)\),现在已知\(a=O ...
- telnet安装和使用教程
一.安装telnet 1.检测telnet-server的rpm包是否安装 [root@localhost ~]# rpm -qa telnet-server若无输入内容,则表示没有安装.出于安全考虑 ...
- 小学四则运算口算练习app---No.7
今天主要改了设置页面的提示框以及按钮的闪退问题: activity_calculators .class import android.support.v7.app.AppCompatActivity ...
- 小学四则运算口算练习app---No.2
经过昨天的了解,虽然还是很懵,总要下手摸到鼠标来写第一个页面! 这是一开始设置出体数目和时间的页面,使用者根据提示进行相关设置即可! 代码如下: <?xml version="1.0& ...
- Running Routes Kattis - runningroutes(区间dp)
Running Routes \[ Time Limit: 12000 ms\quad Memory Limit: 1048576 kB \] 题意 给出一个正 \(n\) 边形,标号顺时针从 \(0 ...
- 学习-guava
Guava Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库 例如:集合 [collections] .缓存 [caching] .原生类型支持 [primitives sup ...
- 图的遍历 | 1131地铁图: dfs复杂模拟题
这题在搞清楚思路绕过坑后,还是可以写的出通过sample data的代码的.但是不能AC,让我很气. 最后查清原因:还是对dfs本质理解的不够. wa代码: vis[s]=1; dfs(s,e,0); ...
- 第02组 Alpha冲刺(2/6)
队名:無駄無駄 组长博客 作业博客 组员情况 张越洋 过去两天完成了哪些任务 任务分配.进度监督 提交记录(全组共用) 接下来的计划 沟通前后端成员,监督.提醒他们尽快完成各自的进度 还剩下哪些任务 ...
- ES6-Generator使用与改写
用Generator封装Symbol中的iterator方法: 注意:Generator的function后必须写* config:分别有3个txt文件,两个文件写路径,一个文件写要输出的内容 前置写 ...
- 记一次网络故障——pod间无法通信
一.背景 集群是二进制部署 部署完成后一起正常,各种资源对象均可正常创建. 部署应用后发现无法跨节点通信,且pod的ip都是172.17.0.0段的 二.排查过程层 查看节点路由,发现docker0网 ...