码迷,mamicode.com
首页 > 编程语言 > 详细

javascript设计模式与开发实践 阅读总结

时间:2018-04-29 14:36:35      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:返回值   inf   turn   sed   single   strong   没有   size   img   

4月已经过去,5月已经来临,春招的尾巴抓不住,只能先去一家公司实习,但是其实很庆幸的是,碰到了很nice的团队,虽然刚开始去那边只是熟悉环境和水一水,但是我还是兢兢业业地看之前的项目,当然闲暇之余还是要多看书啦,毕竟春招过了还有秋招啊,人还是要多多努力的啊!!!!

技术分享图片

概念:

闭包:其实就是改变变量的生命周期,js的回收机制一般是垃圾回收(当然bom和dom有点不同),当调用函数过后,局部变量没有被销毁,反而依然被引用着,那么这就是闭包。

高阶函数:只要满足下面任意一个条件就是高阶函数

1、函数可以作为参数被传递;

2、函数可以作为返回值被输出。

单例模式

 

技术分享图片
 1 //单例模式
 2 var getSingle = function(fn){
 3 
 4     var result;
 5     return function(){
 6         return result || ( result = fn.apply(this,arguments) );
 7     }
 8 
 9 };
10 
11 
12 //创建节点
13 var createLoginLayer = function(){
14 
15     var div = document.createElement(‘div‘);
16     div.innerHTML = ‘我是登录浮窗‘;
17     div.style.display = ‘none‘;
18     document.body,appendChild(div);
19     return div;
20 
21 };
22 
23 
24 var createSingleLoginLayer = getSingle(createLoginLayer);
25 document.getElementVById(‘loginBtn‘).onclick = function(){
26     var loginLayer = createSingleLayer();
27     loginLayer.style.display = ‘block‘;
28 }
View Code

 策略模式

 

技术分享图片
 1 var strategies = {
 2     "S": function( salary ) {
 3         return salary * 4 ;
 4     },
 5     "A": function( salary ) {
 6         return salary * 3 ;
 7     },
 8     "B": function( salary ) {
 9         return salary * 2 ;
10     }
11 }
12 var caculateBonus = function ( level, salary ) {
13     return strategies[ level ]( salary );
14 }
15 console.log( caculateBonus( ‘S‘,2000 ) );
View Code

 

javascript设计模式与开发实践 阅读总结

标签:返回值   inf   turn   sed   single   strong   没有   size   img   

原文地址:https://www.cnblogs.com/847775724echo/p/8970815.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!