JS高级---闭包小案例】的更多相关文章

闭包小案例 普通的函数 //普通的函数 function f1() { var num = 10; num++; return num; } console.log(f1()); //11 console.log(f1()); //11 console.log(f1()); //11 函数模式的闭包 //函数模式的闭包 function f2() { var num = 10; return function () { num++; return num; } } var ff = f2();…
沙箱小案例 substr截取, 从指定的字段开始截取 (function () { var str="小白喜欢小黑"; str=str.substr(2); console.log(str); }()); substr截取, 从指定的字段开始截取 //沙箱 (function () { var str="小明喜欢小红"; str=str.substr(2); console.log(str); }()); 沙箱的案例,操作页面元素 <div>这是div&…
代码案例: <html> <head> <meta charset="utf-8"> <title>AngularJS 路由实例</title> </head> <body ng-app='routingDemoApp'> <h2>AngularJS 路由应用</h2> <ul> <li><a href="#/">首页<…
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script type="text/javascrip…
function foo(x){ var tmp = 3; return function(y){ //把一个函数作为返回值,定义时候的作用域 console.log(x+y+(++tmp)) //++tmp先自加再参与表达式运算 } } var bar = foo(2) //此时bar指向了匿名函数,匿名函数又指向了 x,tmp两个变量 bar就是一个闭包(匿名函数加x,tmp两个父级变量) bar(10) //16 bar(20) //27 此时函数执行完成后里面的变量没有回收掉 所以tmp…
从上篇文章我们知道与浏览器的交互操作如鼠标点击,都会被放入任务队列中,而放入到任务队列中是必须等到主线程的任务都执行完之后才能执行,故而我们有时利用for循环给dom注册事件时候,难以获取for循环中对应的i值,可是我们可以利用闭包啊 方法1: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</ti…
效果图: html代码: <div id="date"> <p> <span id="prev">上一月</span> <span id="year">2022</span> <span id="next">下一月</span> </p> <h5 id="month">七月</h5&…
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>菜鸟教程 React 实例</title> <script src="http://static.runoob.com/assets/react/react-0.14.7/build/react.min.js"></script> <scrip…
一.前言 本节内容主要对小案例做一个总结: 1.如何开始搭建小项目 2.路由设计 3.模块应用 4.项目源码以及实现过程github地址: 项目演示如下: 二.主要内容 1.项目的关键性js源码: 项目的入口: /** * app.js 入门模块 * 职责: * 创建服务 * 做一些服务相关配置 * 模板引擎 * body-parser 解析表单 post 请求体 * 提供静态资源服务 * 挂载路由 * 监听端口启动服务 */ var express = require('express') v…
js闭包小实验 一.总结 一句话总结: 闭包中引用闭包外的变量会使他们常驻内存 function foo() { var i=0; return function () { console.log(i++); } } 1.如下实验的结果是什么,为什么? |||-begin function foo() { var i=0; return function () { console.log(i++); } } var f1=foo(); var f2=foo(); f1(); f1(); f1()…