<!DOCTYPE html><html lang="en"><head> ???<meta charset="UTF-8"> ???<title>Title</title></head><body> ???<script> ???????/** ????????* 闭包调用 ????????* @param n ????????* @param o ????????* @returns {{fun: fun}} ????????*/ ???????function fun(n,o) { ???????????console.log(o);//打印n ???????????return { ???????????????fun :function (m) { ???????????????????return fun(m,n)//闭包n 继续调用fun(n,o),其中n->m,o->n(上一次的n) ???????????????} ???????????} ???????} ???????/** ????????* 产生了一个闭包 ????????* @type {any} ????????*/ ???????var a=fun(0)//undefined ?没有产生新的闭包 ???????a.fun(1)//0 ???????a.fun(2)//0 ???????a.fun(3)//0 ???????/** ????????* 产生了4次闭包 ????????*/ ???????var a=fun(0)//undefined ???????????????.fun(1)//0 ???????????????.fun(2)//1 ???????????????.fun(3)//2 ???????/** ????????* 产生2次闭包 ????????*/ ???????var a1=fun(0)//undefined ???????????????.fun(1);//0 ???????a1.fun(2)//1 ???????a1.fun(3)//1 ???</script></body></html>
该题目考的闭包
js闭包面试题目
原文地址:http://www.cnblogs.com/lonecloud/p/7500566.html