我的前端学习之路<设计模式><单页面应用程序>

认识设计模式

为了解决一类问题而给出的简洁而优化的解决方法

单例模式

一个构造函数一生只能创建一个实例
核心代码

let instince = null
function singleton = (){if(!instince)instince = new 构造函数   return instince}

问题:不能随便传递参数
之前都是通过new的方式现在是通过函数调用的方式得到对象

单例模式变形

第一次变形:

在全局值暴露一个变量
使用闭包和自执行函数
第二次变形:解决参数问题
在构造函数的原型对象上定义一个方法
第三次变形:解决和 new 使用的问题

策略模式

出现原因:代码的阅读性和维护性低
作用:节省if条件的书写
核心:我们准备一个数据结构,里面保存的就是

发布订阅模式

就是我们自己模拟一个事件侦听器
作用:把想要做的事情放到一个函数中,当想要执行的时候触发函数

单页面应用程序(SPA)

SPA:single page application
就是一个网页只有一个结构
配合一个入口文件,假如叫做index.html
这个内容的加载和实现依靠我们的路由实现
切换方式

1,就是通过#(hash)(哈希)值的改变来切换
2,通过我们的历史记录(history)
相对麻烦,而且需要服务器支持
多使用在:移动端 / pc端的后台管理系统

第一步:
获取hash
语法:window . location . hash
事件:hashchange(哈希值改变)
这个事件要绑定给window
第二步:
需要一个入口的结构
用来渲染我们要展示的内容的

开发方式

组件化开发

开发类型

面向过程
面向对象

模块化开发

每一个js文件就是一个模块

组件化开发

是一套完整的结构:html + css + js
SPA是属于组件化开发

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值