2017.5.26
今日早报
- “Siri之父”:Siri为了改变世界,AI可以有情感
- Facebook公布最新的神经网络机器翻译算法
- Xamarin Live Player加速了APP的开发周期
- 使用XLP的主要好处是:开发者在开始创建iOS或Android移动应用时,无需先下载相应的软件开发工具包。只管编写移动应用程序,并部署到您的iOS或Android设备中就可以进行实时的开发和调试了。
前端常见题目
问题1: 优先级算法如何计算?
重要性和来源的优先级排序从低到高是:
1、浏览器默认样式
2、用户在浏览器中定义的普通样式(normal规则,不带important规则)
3、开发人员定义的普通样式( normal规则,不带important规则)
4、开发人员定义特殊样式(带important规则)
5、用户在浏览器中定义特殊样式(带important规则)
另外还有一些原则:
1、相同的样式在CSS规则后添加了!important的优先于没有添加的。
2、CSS规则在文档中出现的顺序后面定义的的优先于前面定义的。
3、加了!important的优先于内联样式。
4、内联样式优先于用link引入的样式和页面上
问题2: split() join() 的区别?
答案: 前者是切割成数组的形式,后者是将数组转换成字符串
问题3: ajax请求的时候get 和post方式的区别?
1、一个在url后面 一个放在虚拟载体里面
2、有大小限制
- get通过url地址传送数据,数据量不能超过1024byte;
- post作为http消息的实体内容传送到服务器中,传送数据量可以很大;
3、安全问题
4、应用不同 一个是论坛等只需要请求的,一个是类似修改密码的
问题4: IE和标准下有哪些兼容性的写法?
1、var ev = ev || window.event
2、document.documentElement.clientWidth || document.body.clientWidth
3、var target = ev.srcElement||ev.target
前端常见题目个人思考题 :
1、 说一下你理解的MVVM,画一下你的设计模式。
- MVC
- MVC模式的意思是,软件可以分成三个部分。
- 视图(View):用户界面。
- 控制器(Controller):业务逻辑
- 模型(Model):数据保存
- 所有通信都是单向的
- 1.View 传送指令到 Controller
- 2.Controller 完成业务逻辑后,要求 Model 改变状态
- 3.Model 将新的数据发送到 View,用户得到反馈
- MVC模式的意思是,软件可以分成三个部分。
- MVP
- MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向。
- 1.各部分之间的通信,都是双向的。
- 2.View 与 Model 不发生联系,都通过 Presenter 传递。
- 3.View 非常薄,不部署任何业务逻辑,称为”被动视图”(Passive View),即没有任何主动性,而 Presenter非常厚,所有逻辑都部署在那里。
- MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向。
- MVVM
- MVVM 模式将 Presenter 改名为 ViewModel,基本上与 MVP 模式完全一致。
- 唯一的区别是,它采用双向绑定(data-binding):View的变动,自动反映在 ViewModel,反之亦然。Angular 和 Ember 都采用这种模式。
- 唯一的区别是,它采用双向绑定(data-binding):View的变动,自动反映在 ViewModel,反之亦然。Angular 和 Ember 都采用这种模式。
- MVVM 模式将 Presenter 改名为 ViewModel,基本上与 MVP 模式完全一致。