1、MVC 三个对象分别做什么
const m = {
data:{},
create(){增},
delete(){增},
update(){改},
get(){查}
}
const v = {
el:null,
html:...,
init(container){
v.el = $(container)
}
render(){渲染 html}
}
const c = {
init(container){
v.init(container)
v.rander(m.data)
c.autoBindEvenr()
}
events:{
'click #add':'add',
'click #minus':'minus',
'click #mul':'mul',
'clicl #divide':'div',
}
autoBindEvents(){
for(key inc.events){
const value = c[c.events[key]]
const spaceIndex = key.indexOf(' ')
const part1 = key.splice(0,spaceIndex)
const part2 = key.splice(spaceIndex+1)
v.el.on(part1,part2,value)
}
}
}
2、EventBus 有哪些 API
on:用于监听事件
eventBus.on('m:updated',()=>{})
trigger:用于触发事件
eventBus.trigger('m:updated')
off:用于删除监听事件
3、表驱动编程是做什么的
- 表驱动编程,通过使用数据结构的哈希表,从表里面查找信息而不是使用
if...else...语句。能够消除代码里面重复次数过多的if...else...语句,让反复的代码变得更加简单,多用于逻辑性不强但是分支多的情况。
4、如何理解模块化
- 使用模块化可以更好的实现代码的高内聚、低耦合原则,让模块与模块之间更加独立。
- 想要修改某个模块代码时,可以单独修改该模块的内容而不会影响到其他的页面,想要更换使用的框架时也会更加的方便