前端面试总结

1、jquery和js的区别
js:javaScript的简写形式就是JS,一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能(其编写的程序可以被嵌入到HTML或XML页面中,并直接在浏览器中解释执行)。
ajax:是一门技术,基于js的一门技术,主要用途就是提供异步刷新,不是整个页面刷新,只刷新一部分。一个是技术(ajax),一个是语言(js),两者有本质区别
jquery:jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。更方便操作dom。

2、如何理解mvvm
mvvm的优点:
1、主要目的分离视图(view)和模型(model)
2、降低代码耦合,提高视图或逻辑的重用性
3、提高了模块的可测试性
m:模型(Model),即模型和业务数据绑定,方便数据的使用和传递
v:视图(View),即应用程序中用户界面相关的部分,是用户看到并与之交互的界面。
vm:视图模型(ViewModel),即就是与界面(view)对应的Model,模型(Model)中的数据改变通过视图模型(ViewModel)告知视图(View)并渲染数据。
简单的说,ViewModel就是View与Model的连接器,View与Model通过ViewModel实现双向绑定。
3、v-model如何实现双向绑定

依赖于Object.defineProperty(),通过这个函数可以监听到get,set事件,其中observer是最主要的部分,用Object.defineProperty来实现数据的劫持,然后用他的set,get方法来通知订阅者,触发update方法,从而实现更新视图
4、w3c盒模型和ie盒模型的区别

ie盒模型:conteng+padding+boder+width
w3c盒模型:内外边距在保证内容宽高不变的情况下向外扩张

5、微信小程序的跳转方式有哪些

1、标签写法<narigator url='/pages/'>url中跟的是绝对路径</narigator>
2、js实现 调用wxapi
wx.narigateTo({ url:'绝对路径' }) 保留当前页面,跳转到某个页面
wx.redirectTo({ url:'绝对路径' }) 关闭当前页面,跳转到某个页面
wx.reLaunch({ url:'绝对路径' }) 跳转到指定页并关闭其他所有页面,最多用来返回首页
wx.switchTab({ url:'绝对路径' }) 跳转到tabBar页面,并关闭其他所有tabBar页面
wx.navigateBack({ delta:1 }) 返回上一页或者多级页 微信开发文档说明 返回的页面数,如果 delta 大于现有页面数,则返回到首页。 https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.navigateBack.html
6、原生this和jquery中的$(this)的区别
this是js中的关键字,this的指向:1、全局变量中this指向window
2、在函数中,如果这个函数没有被上一级的对象调用则指向window,如果被上一级的对象调用则永远指向上一级对象
3、在事件对象中指向事件对象
4、在定时器中指向window
$(this) 可以认为是用 jQuery 包装过js中的 this,包装后 $(this) 就会继承 jQuery 的方法。
7、vue的生命周期
初始化前(beforeCreate)、初始化后(created)
挂载前(beforeMount)、挂载后(mounted)
更新前(beforeUpdate)、更新后(update)
销毁前(beforeDestroy)、销毁后(destroyed)
8、微信小程序有哪些生命周期

应用级(app):onLaunch() 初始化调用
onShow() 进入前台显示
onHide() 后台隐藏
onError() 监听错误
onPageNotFound() 页面不存在
页面级(page):onLoad() 当前页面被加载了
onShow() 进入前台显示
onReady() 当页面初次渲染完成 只触发一次
onHide() 后台隐藏
更多页面级请 https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/page.html

posted @ 2020-08-18 14:43  愧成她的白月光  阅读(95)  评论(0)    收藏  举报