javascript学习第五课this、call、apply
js函数与其它 高级语言相比有一个特点。没有返回值,一个简单函数就是function关键字+函数名字构成
this 对象是在运行中基于函数的执行环境绑定的,在全局函数中,this等于window,而当函数被 作为某个对象的方法调用时,this等于那个对象
也就是说this关键字就是指代调用者。
call、apply示例:
1.简单用法:绑定一些函数,用于传递参数、调用

2.用于扩展用于函数运行的作用域:



js没有块级作用域的概念:

模拟高级语言实现块级作用域的功能示例:
通过运用匿名函数自执行实现:

闭包:

闭包示例:

使用闭包注意:当引用闭包的变量使用完成之后,在后面加一条语句 :
b = null; 解除引用,使用垃圾回收,释放内存。
javascript学习第五课this、call、apply的更多相关文章
- Java程序猿的JavaScript学习笔记(3——this/call/apply)
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...
- Elasticsearch7.X 入门学习第五课笔记---- - Mapping设定介绍
原文:Elasticsearch7.X 入门学习第五课笔记---- - Mapping设定介绍 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本 ...
- JavaScript学习总结(五)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- javascript第十五课:DOM
dom就是文档,就是整个网页的简称,dom里面的标签就是对象 使用javascript进行DHMTL网页开发(Dynamic Html 动态网页) dom就是把html页面模拟成一个对象,顶级对象wi ...
- 【原创】bootstrap框架的学习 第五课
一.Bootstrap 中定义了所有的 HTML 标题(h1 到 h6)的样式. <!DOCTYPE html> <html> <head> <title&g ...
- JavaScript学习总结(五)——Javascript中==和===的区别
一.JavaScript"=="的作用 当==两边的内容是字符串时,则比较字符串的内容是否相等. 当==两边的内容是数字时,则比较数字的大小是否相等. 当==两边的内容是对象或者是 ...
- Git速成学习第五课:分支管理策略
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 通常合并分支时,如果可能用Fast forward模式,但是在这种模式下,删除分支后,会丢掉分支 ...
- javascript学习第四课函数
函数也是一种数据类型:function类型 所以函数也可当作一个数据作参数传递 三种函数的声明示例: 一般来讲,声明方式一和声明方式二比较常用,方式三比较少. 常用函数方式示例: 注意:虽然函数支持嵌 ...
- javascript学习第三课引用类型object
主要内容: 1.object 是所有类型的基类 实例化对象: 1. var obj = new Object(); 2. var obj = {}; 设置对象属性和方法: obj.name = 'he ...
随机推荐
- input 放大镜
<input results="s" type="search" size="20px" placeholder="搜 ...
- AngularJS 2 Typescript 相关
1. Angular 2 In 60 Minutes (2016年11月23日) https://www.youtube.com/watch?v=-zW1zHqsdyc 2. AngularJS Cl ...
- delphi Style TBitmapLink
New Bitmap Links Editor http://docwiki.appmethod.com/appmethod/1.17/topics/en/What's_New A new edito ...
- mysql5.7忘记密码
注意:mysql5.7 user表密码字段由password改为authentication_string 1.service mysql stop 2.mysqld_safe --skip-gran ...
- WPS for Linux,系统缺失字体
启动WPS for Linux后,出现提示"系统缺失字体" . 出现提示的原因是因为WPS for Linux没有自带windows的字体,只要在Linux系统中加载字体即可. 具 ...
- Managing IIS Log File Storage
Managing IIS Log File Storage You can manage the amount of server disk space that Internet Informa ...
- C# 实现一个可取消的多线程操作 示例
private void button1_Click(object sender, EventArgs e) { //定义一个为可取消资源标志 CancellationTokenSource cts ...
- 内存工具类:MemoryManager
个人学习,仅供参考! package com.example.administrator.filemanager.utils;import android.app.ActivityManager;im ...
- 文本提交带单引号引起mysql报错
mysql插入数据时报错:MySQL server version for the right syntax to use near 'Microsoft YaHei', 经过反复测试,原因是提交的编 ...
- man curl_easy_perform(原创)
curl_easy_perform(3) libcurl 手册 curl_easy_perform(3) 名字 curl_easy_perform ...