电子商务网站网络推广方式设置wordpress网页私有

张小明 2026/1/10 18:20:01
电子商务网站网络推广方式,设置wordpress网页私有,wordpress 加水印,宁波seo平台策略模式定义#xff1a;策略模式定义了一系列的算法#xff0c;并且会将每一个算法封装起来#xff0c;让它们可以相互的替换。策略模式的组成#xff1a;一个基于策略模式的程序至少由两部分组成#xff0c;第一部分是一组策略类#xff0c;策略类封装了具体的算法策略模式定义了一系列的算法并且会将每一个算法封装起来让它们可以相互的替换。策略模式的组成一个基于策略模式的程序至少由两部分组成第一部分是一组策略类策略类封装了具体的算法并负责具体计算过程第二个部分是环境类Context,Context接受客户的请求随后把请求委托给某一个策略类说明Context中要维护对某个策略对象的引用// 策略接口interfaceIStrategy{execute(a:number,b:number):number;}// 定义具体的策略类// 这里定义了四个具体的策略类分别是加法、减法、乘法和除法classAddStrategyimplementsIStrategy{execute(a:number,b:number):number{returnab;}}classSubStrategyimplementsIStrategy{execute(a:number,b:number):number{returna-b;}}classMulStrategyimplementsIStrategy{execute(a:number,b:number):number{returna*b;}}classDivStrategyimplementsIStrategy{execute(a:number,b:number):number{returna/b;}}// 上下文内部维护了具体的策略的引用// 回头客户端调用的时候只需要调用上下文的方法即可classContext{// 维护具体的策略privatestrategy:IStrategy;constructor(st:IStrategy){this.strategyst;}// 设置新的策略setStrategy(st:IStrategy){this.strategyst;}//执行策略方法executeStrategy(a:number,b:number):number{returnthis.strategy.execute(a,b);}}// 创建一个上下文对象// 在创建的时候传递一个默认的执行策略constcontextnewContext(newAddStrategy());// 执行对应的策略consta5;constb3;constresultcontext.executeStrategy(a,b);context.setStrategy(newSubStrategy())constresult2context.executeStrategy(a,b);context.setStrategy(newMulStrategy());constresult3context.executeStrategy(a,b);console.log(result);console.log(result2);console.log(result3);再来看一个表单的例子formidregisterFormaction#请输入用户名inputtypetextnameusername/请输入密码inputtypetextnamepassword/请输入手机号inputtypetextnamephoneNumber/buttonidbutton提交/button/formscriptvarregisterFormdocument.getElementById(registerForm);varbuttondocument.getElementById(button);button.onclickfunction(){if(registerForm.username.value){console.log(用户名不能为空);returnfalse}if(registerForm.password.value.length6){console.log(密码长度不能少于6位);returnfalse}if(!/(^1[3|5|8][0-9]{9}$)/.test(registerForm.phoneNumber.value)){console.log(手机号码格式不正确);returnfalse}}/script这是一种很常见的做法提交函数比较庞大缺少弹性违反开放-封闭原则下面用策略模式来重构表单校验varstrategies{isNonEmpty:function(value,errorMsg){// 不为空if(value){returnerrorMsg;}},minLength:function(value,length,errorMsg){// 限制最小长度if(value.lengthlength){returnerrorMsg;}},isMobile:function(value,errorMsg){// 手机号码格式if(!/(^1[3|5|8][0-9]{9}$)/.test(value)){returnerrorMsg;}}}varvalidataFuncfunction(){varvalidatornewValidator();// 创建一个validator对象// 添加一些校验规则validator.add(registerForm.username,isNonEmpty,用户名不能为空);validator.add(registerForm.password,minLength:6,密码长度不能少于6位);validator.add(registerForm.phoneNumber,isMobile,手机号码格式不正确);varerrorMsgvalidator.start();// 获得校验结果returnerrorMsg;// 返回校验结果}varregisterFormdocument.getElementById(registerForm);varbuttondocument.getElementById(button);button.onclickfunction(e){e.preventDefault();varerrorMsgvalidataFunc();// 如果有返回值说明未通过校验if(errorMsg){console.log(errorMsg);returnfalse;}}varValidatorfunction(){this.cache[];// 保存校验规则}Validator.prototype.addfunction(dom,rule,erroeMsg){varargrule.split(:);// 把strategy和参数分开this.cache.push(function(){// 把校验的步骤用空函数包装起来并且放入cachevarstrategyarg.shift();// 用户挑选的strategyarg.unshift(dom.value);arg.push(erroeMsg);returnstrategies[strategy].apply(dom,arg);})}Validator.prototype.startfunction(){for(leti0,validataFunc;validataFuncthis.cache[i];){varmsgvalidataFunc();// 开始校验并取得校验后返回信息if(msg){// 有返回值说明校验没有通过returnmsg;}}}非原创来源渡一谢杰老师和javascript设计模式与开发实践 -曾探 简单记录周五啦周末愉快
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

怎样搭建微网站凡客诚品 v官网

第一章:边缘Agent部署的核心挑战与价值在现代分布式系统架构中,边缘Agent作为连接中心平台与终端设备的关键组件,承担着数据采集、本地决策和指令执行的重要职责。其部署不仅提升了系统的响应速度与隐私安全性,还有效降低了对中心…

张小明 2026/1/10 9:26:58 网站建设

什么企业做网站比较好龙岩市兼职网

Vue文件管理器的终极解决方案:wl-explorer革命性体验 【免费下载链接】wl-explorer 用于vue框架的文件管理器插件,云盘、网盘。File manager plug-in for vue framework, cloud disk. 项目地址: https://gitcode.com/gh_mirrors/wl/wl-explorer …

张小明 2026/1/10 9:26:58 网站建设

实际网站开发怎样分工中小学网站建设排行2017

Raspberry Pi的多功能应用与防护技巧 1. 使用脚本上传植物温湿度数据到Google Docs 若要使用脚本将植物的温湿度数据上传到Google Docs,需要用自己的Google Docs账户信息配置脚本。具体步骤如下: 1. 用你喜欢的文本编辑器打开 Adafruit_DHT_googledocs.ex.py 文件,找到…

张小明 2026/1/10 3:40:33 网站建设

佛山网站建设设计快速优化seo软件推广方法

概要Avalonia系列教程每周五持续更新。喜欢本系列视频的观众可在B站或本公众号关注,并且可在评论区表达想看的内容。关注关注Bilibili或本公众号,即可参与不定期会在视频结尾抽奖。https://www.bilibili.com/video/BV1CFJWzuEaG教程中相关的PPT和示例代码…

张小明 2026/1/10 9:27:02 网站建设

建设网站需要哪些认证营销策划好的网站

SQL注入实战攻防:从入门到绕过WAF 前段时间帮朋友的公司做渗透测试,在一个看似防护严密的系统上发现了SQL注入漏洞。这让我意识到,即使在2025年,SQL注入依然是Web安全的头号威胁。今天就来聊聊SQL注入的完整攻防链路,从…

张小明 2026/1/10 9:27:03 网站建设

仿励志一生lz13网站整站源码壹佰网站建设

OpenCode终极指南:5步掌握终端AI编程助手的核心功能 【免费下载链接】opencode 一个专为终端打造的开源AI编程助手,模型灵活可选,可远程驱动。 项目地址: https://gitcode.com/GitHub_Trending/openc/opencode 想要在终端中体验AI编程…

张小明 2026/1/9 20:26:38 网站建设