摘要: 函数柯里化:预先将函数的某些参数传入,将其保存在内部函数中 function createNum(start) { return function (end) { return start += end ; } } var t= createNum(5); console.log(t(3)); // 阅读全文
posted @ 2019-12-18 16:16 雨夜稻草 阅读(230) 评论(0) 推荐(0) 编辑
摘要: var searchBox = (function() { var cache = {},count = 0, index = []; return function(key, value) { if (cache[key]) { return value; } cache[key] = value 阅读全文
posted @ 2019-12-18 16:15 雨夜稻草 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 1)嵌套函数,内部函数访问了外部函数的局部变量,通过返回内部函数,在函数外部调用内部函数,从而更新外部函数的局部变量的过程; 2)代码执行完成之后离开作用域依旧存在 3)有可能发生内存泄露,若对象的引用计数为0,js自动回收;闭包中,外部引用内部变量,若出现循环引用,比如A引用B,B引用C....造 阅读全文
posted @ 2019-12-18 15:58 雨夜稻草 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 1)立即执行 2)表达式 3)括号,分号结束 | 前缀运算符 | 表达式上下文 4)只需要执行一次,内部变量无需维护,可用于初始化 (function( ) { })( ); 或 (function( ){ }( )); 或通过前缀运算符强制执行表达式,可以无分号 +function() { }( 阅读全文
posted @ 2019-12-18 15:44 雨夜稻草 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 1、JS中用:arguments 1)存放实参的集合,是一个类似于数组的对象,只有数组的 length,没有数组方法 function add1(a,b,c) { console.log(arguments.length) // 实参个数1个 } add1(3) 2)arguments.callee 阅读全文
posted @ 2019-12-18 15:22 雨夜稻草 阅读(891) 评论(0) 推荐(0) 编辑
摘要: 1、函数参数为undefined时,触发参数默认值 2、实参数量 < 形参数量,多余的形参值为 underfined 3、设置可选参数 1)JS中: 检测 undefined :function addNum(num) { if(num undefined ) { num = 3 } return 阅读全文
posted @ 2019-12-18 14:32 雨夜稻草 阅读(1102) 评论(0) 推荐(0) 编辑
摘要: 1)函数参数只有一个:可以省略 ( ) var f = a => a 等同于 var f = function (a) { return a } 2)函数内部语句只有一个:可以省略 { } , return 关键字 var f = (a,b) => a+b 等同于 var f = function 阅读全文
posted @ 2019-12-16 22:12 雨夜稻草 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 属性遍历: 1、for...in:包含原型属性 1)[[Enumberable]] = true 1)Object.hasOwnProperty() 筛出原型属性 2、Object.keys(obj); var obj = { name:'aa', age: 22 } var s = Object. 阅读全文
posted @ 2019-12-16 21:39 雨夜稻草 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 待 阅读全文
posted @ 2019-12-16 21:35 雨夜稻草 阅读(70) 评论(0) 推荐(0) 编辑
摘要: forEach 1)跳过数组空缺元素 2)无返回值 var colors = ["red", "blue", "grey"]; colors.forEach(function(item, index) { console.log(index + "-" + item) //0-red 1-blue 阅读全文
posted @ 2019-12-16 09:54 雨夜稻草 阅读(162) 评论(0) 推荐(0) 编辑