JS学习day5
来源:互联网 发布:网络摄像头ip搜索工具 编辑:程序博客网 时间:2024/05/19 13:16
call,apply方法的使用
- 绑定一些函数,用于传递参数的调用
function sum(x,y){return x + y;}function call1(num1,num2){return sum.call(this, num1 , num2);//this指当前这个函数的作用域,传递当前函数的参数num1与num2}//apply方法与call方法类似,不过apply方法传递的是一个数组function apply1(num1,num2){ return sum.apply(this,[num1,num2]);//这里是个数组}
- 扩充作用域
window.color = 'red';var obj = {color:'blue'};//对象与方法没有耦合关系function showColor(){ alert(this.color);}showColor.call(window);showColor.call(obj);
执行环境与作用域链
- 执行环境是js中最重要的一个概念。执行环境定义了变量或有权访问的其他数据,决定了它们各自的行为。每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中。
作用域链是你可以一级一级的访问上一级的作用域的变量和函数,但是你不能从上一层向下来进行访问下一级的作用域的变量
一层一层的向上来追溯,有顺序的向上去找,全局变量尽量少用
垃圾收集,块级作用域
垃圾收集
- 标记法
//垃圾收集 标记法function test(){var a = 10; //被标记var b = 20; //被使用}test();//执行完毕之后,a与b两个变量又会被标记一次,//状态为没有被使用,则释放ab变量的内存空间
- 引用计数法(不做介绍)
块级作用域
- js没有块级作用域的概念
function test(){ for (var i = 1; i<=5;i++){ alert(i); } alert(i); //这个alert还可以执行,并且为6}test();
闭包
//闭包:一个函数 可以访问另外一个 函数作用域中的变量//封闭性:起到保护变量的作用//1级作用域function f(x){ //2作用域 var temp = x; return function(x){ //3作用域 temp += x; alert(temp); }}//如果下级还有函数使用上个变量,就不会进行垃圾回收。var a = f(50)a(5);
0 0
- JS学习day5
- js复习笔记day5
- 多线程学习总结 day5
- java学习笔记day5
- CCNA学习笔记Day5
- Java学习 day5
- Android学习笔记day5
- java学习day5
- Python学习记录day5
- Python学习day5作业
- Python学习,Day5
- Java学习--day5
- 计算机网络学习day5
- python学习日志--day5
- CSS学习笔记(Day5)
- Java学习day5
- 机器学习学习笔记.day5
- day5
- DOM包裹wrapAll()方法
- IM即时通讯(五) 语音传输
- 清除error.log、access.log并限制Apache日志文件大小的方法
- Restful形式接口文档生成之Swagger与SpringMVC整合
- ffmpeg ffplay播放延时大问题:播放延时参数设置
- JS学习day5
- react-native ViewPageAndroid页面跳转问题
- 【J2EE】学习环境配置
- TabLayout实现底部顶部导航栏
- Laravel5.4常见问题-Migrate数据库问题
- Java读取Excel表格数据的基本步骤
- Android通过WIFI建立热点,通过scoket实现聊天室,文件传输等通信功能。
- ajax股票获取
- 蓝桥杯 方格填数(DFS)