通过经典题目来理解多种闭包实现方式
2019独角兽企业重金招聘Python工程师标准>>>
需求:生成十个按钮,内容分别是1~10,点击每个按钮输出当前的序号,即点击1输出1。
for (var i = 1; i <= 10; i++) {var doc = document.createElement('button');doc.innerHTML = i;//错误写法doc.onclick = function() {console.log(i);}//方法一// doc.onclick = function() {// console.log(this.toString());// }.bind(i);//方法二// doc.onclick = function (x) {// return function () {// console.log(x);// }// }(i);//方法三// doc.onclick = function() {// var x= i;// return function () {// console.log(x);// }// }()//方法四 arguments.callee指向匿名函数自身,此方法系统消耗最小// (doc.onclick = function() {// console.log(arguments.callee.x);// }).x = i;//方法五// doc.dataset.value = i;// doc.onclick = function(){// console.log(this.dataset.value);// };document.body.appendChild(doc);
}
转载于:https://my.oschina.net/keysITer/blog/749249
通过经典题目来理解多种闭包实现方式相关推荐
- 《七周七语言:理解多种编程范型》书评整理
任何一个想在程序开发这条路上走远点的人都应当多了解几门语言,多接触一些编程泛型,才能打开眼界,提高自己. 国内绝大多数程序员可能就知道个OOP,借着javascript的兴起可能有小部分人能够对原型有 ...
- 深入理解JavaScript闭包(closure) 【收藏】
深入理解JavaScript闭包(closure) 原文地址:http://www.felixwoo.com/archives/247 Felix Woo 最近在网上查阅了不少Javascript闭 ...
- (转)深入理解Javascript闭包(closure)
深入理解Javascript闭包(closure) 一.什么是闭包? "官方"的解释是:所谓"闭包",指的是一个拥有许多变量和绑定了这些变量的环境 ...
- 动态规划经典题目_动态规划经典题目:鸡蛋掉落(附视频讲解)
题目: 思路: 先放上视频讲解 动态规划经典题目:鸡蛋掉落https://www.zhihu.com/video/1225199247848513536 纠正:视频里的状态转移方程漏写了一个+1,意思 ...
- LeetCode:数组刷题(17道经典题目)
LeetCode 数组刷题(17道经典题目) 本文带来的是以数组为主题的经典题目,主要实现是C++,部分题目也用Python实现了. 704. 二分查找 35.搜索插入位置 34. 在排序数组中查找元 ...
- 什么是闭包,对闭包的理解,闭包的用途及优缺点
1.对闭包的理解 闭包是指有权访问另一个函数作用域中变量的函数,创建闭包的最常见的方式就是在一个函数内创建另一个函数,创建的函数可以访问到当前函数的局部变量. 2.闭包的特点 1.让外 ...
- 算法提高:贪心策略的11个经典题目
目录 字典序最小 零钱问题 股票问题(最多持有一支,可以买卖无限次) 小船过河 任务调度器 摆动序列 最小区间 跳跃游戏 II 分糖果 通配符匹配 拼接最大数 字典序最小 题目 给定一个由字符串组成的 ...
- Leetcode回溯算法经典题目总结
回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就 "回溯" 返回,尝试别的路径.回溯法是一种选优搜索法,按选优条件向前搜索 ...
- 十个利用矩阵乘法解决的经典题目
出自matrix67.com 好像目前还没有这方面题目的总结.这几天连续看到四个问这类题目的人,今天在这里简单写一下.这里我们不介绍其它有关矩阵的知识,只介绍矩阵乘法和相关性质. 不要以为数学 ...
最新文章
- AI面试官也太好骗了吧!
- 微软服务器sql server,解析:微软SQL Server 2008特性和功能
- 在ASP.NET使用javascript的一点小技巧
- Mac 的World空格显示为.
- win10休眠设置_电脑总是“打瞌睡”?教你如何简单关闭自动休眠
- php教程哪个软件好,写php用哪款软件好?解决方法
- 电脑护眼设置_解锁办公新技能 海信护眼平板Q5玩转工作无负担-科技频道
- UNP Chapter 19 - 多播
- php5.6 连接SQL SERVER
- 传智播客 机器学习之数据降维 学习笔记
- nmos导通流向_MOS管知识大集
- 刘潇翔:基于OpenHarmony的仿生四足狗开发分享
- “139邮箱”练好内功比发电影票更重要
- office2016 office2019 office2013 ----一键安装:
- 【区块链 | AAVE】一文讲清-DeFI王者AAVE最新的稳定币GHO提案
- 动态组件_插槽_自定义指令
- VFP下打印机的设置编程
- Python课堂程序之猜单词游戏
- 关于Java,你想知道的一切,这里说透了
- 立足信息时代起点 探索企业营销新模式
热门文章
- 变电站计算机监控系统相关技术,变电站计算机监控系统的研究
- Spring框架的xml出错Cannot resolve reference to bean txPointcut while setting bean property pointcut
- mysql maria引擎_MySQL/mariadb知识点——存储过程及存储引擎
- 20210308 20210309 :链表类题目合集
- 20200209:匹配子序列的单词数(leetcode792)
- python 封装对象数据_Python数据库封装实现代码示例解析
- dhcp服务器设置无线,无线网dhcp服务器设置
- php开发当中遇到的各种问题,PHP项目开发中遇到过的问题
- Oracle CASE WHEN 使用及保留两位小数
- 波段顶底 tdx 副图指标