面试题大全

前端小程序笔试面试题

2019-11-06  本文已影响0人  蛙哇

前言

随便打开一个招聘网站, 你会发现市场上对小程序的需求还挺高的,虽然小程序一部分开发起来还是挺简单ok的,但一些常用的东西还是需要了解一下,因此总结了一篇有关小程序的面试题,希望对你我都帮组。

目录:

前端HTML+CSS笔试题面试题

前端JS笔试题面试题

前端Vue笔试题面试题

1、微信小程序有几个文件

2、微信小程序怎样跟事件传值

给 HTML 元素添加 data-*属性来传递我们需要的值,然后通过 e.currentTarget.datasetonloadparam参数获取。但 data -名称不能有大写字母和不可以存放对象

3、小程序的 wxss 和 css 有哪些不一样的地方?

4、小程序关联微信公众号如何确定用户的唯一性

使用 wx.getUserInfo方法 withCredentialstrue 时 可获取 <encryptedData,里面有 union_id。后端需要进行对称解密

5、微信小程序与vue区别

6、小程序的双向绑定和vue哪里不一样

小程序直接 this.data属性是不可以同步到视图的,必须调用:

this.setData({
    // 这里设置
})

7、简述微信小程序原理

8、小程序的生命周期函数

9、哪些方法可以用来提高微信小程序的应用速度

1、提高页面加载速度

2、用户行为预测

3、减少默认 data 的大小

4、组件化方案

10、微信小程序的优劣势

优势

即用即走,不用安装,省流量,省安装时间,不占用桌面
依托微信流量,天生推广传播优势
开发成本比 App

缺点

用户留存,即用即走是优势,也存在一些问题
入口相对传统 App 要深很多
限制较多,页面大小不能超过2M。不能打开超过10个层级的页面

11、怎么解决小程序的异步请求问题

12、如何实现下拉刷新

首先在全局 config 中的 window配置 enablePullDownRefresh
,在 Page 中定义onPullDownRefresh 钩子函数,到达下拉刷新条件后,该钩子函数执行,发起请求方法
请求返回后,调用wx.stopPullDownRefresh停止下拉刷新

13、bindtap和catchtap的区别是什么

相同点:首先他们都是作为点击事件函数,就是点击时触发。在这个作用上他们是一样的,可以不做区分

不同点:他们的不同点主要是bindtap是不会阻止冒泡事件的,catchtap是阻值冒泡的

14、小程序页面间有哪些传递数据的方法

1、使用全局变量实现数据传递。在 app.js 文件中定义全局变量 globalData, 将需要存储的信息存放在里面

2、使用 wx.navigateTowx.redirectTo 的时候,可以将部分数据放在 url 里面,并在新页面onLoad的时候初始化

3、使用本地缓存Storage 相关

15、小程序wxml与标准的html的异同?

相同:

不同:

16、小程序简单介绍下三种事件对象的属性列表?

基础事件(BaseEvent)

自定义事件(CustomEvent)

触摸事件(TouchEvent)

17、小程序对wx:if 和 hidden使用的理解?

18、微信小程序与H5的区别?

传统的HTML5的运行环境是浏览器,包括webview,而微信小程序的运行环境并非完整的浏览器,是微信开发团队基于浏览器内核完全重构的一个内置解析器,针对小程序专门做了优化,配合自己定义的开发语言标准,提升了小程序的性能。

只在微信中运行,所以不用再去顾虑浏览器兼容性,不用担心生产环境中出现不可预料的奇妙BUG

19、app.json 是对当前小程序的全局配置,讲述三个配置各个项的含义?

20、小程序onPageScroll方法的使用注意什么?

由于此方法调用频繁,不需要时,可以去掉,不要保留空方法,并且使用onPageScroll时,尽量避免使用setData(),尽量减少setData()的使用频次。

21、小程序视图渲染结束回调?

使用setData(data, callback),在callback回调方法中添加后续操作代码

22、小程序同步API和异步API使用时注意事项?

wx.setStorageSync是以Sync结尾的API为同步API,使用时使用try-catch来查看异常,如果判定API为异步,可以在其回调方法success、fail、complete中进行下一步操作。

23、简述下 wx.navigateTo(), wx.redirectTo(), wx.switchTab(), wx.navigateBack(), wx.reLaunch()的区别</h5>

24、如何封装微信小程序的数据请求的?

1、将所有的接口放在统一的js文件中并导出。

2、在app.js中创建封装请求数据的方法。

3、在子页面中调用封装的方法请求数据。

25、小程序与原生App哪个好?

小程序除了拥有公众号的低开发成本、低获客成本低以及无需下载等优势,在服务请求延时与用户使用体验是都得到了较大幅度 的提升,使得其能够承载跟复杂的服务功能以及使用户获得更好的用户体验。

26、webview中的页面怎么跳回小程序中?

首先要引入最新版的jweixin-x.x.x.js,然后

wx.miniProgram.navigateTo({
url: '/pages/login/login'+'$params'
})

27、小程序关联微信公众号如何确定用户的唯一性?

使用wx.getUserInfo方法withCredentialstrue时 可获取encryptedData,里面有union_id。后端需要进行对称解密。

28、小程序调用后台接口遇到哪些问题?

1.数据的大小有限制,超过范围会直接导致整个小程序崩溃,除非重启小程序;

2.小程序不可以直接渲染文章内容页这类型的html文本内容,若需显示要借住插件,但插件渲染会导致页面加载变慢,所以最好在后台对文章内容的html进行过滤,后台直接处理批量替换p标签div标签为view标签,然后其它的标签让插件来做,减轻前端的时间。

29、webview的页面怎么跳转到小程序导航的页面?

答:小程序导航的页面可以通过switchTab,但默认情况是不会重新加载数据的。若需加载新数据,则在success属性中加入以下代码即可:

success: function (e) {
           var page = getCurrentPages().pop();
           if (page == undefined || page == null) return;
           page.onLoad();
          }

webview的页面,则通过

 wx.miniProgram.switchTab({
         url: '/pages/index/index'
       })

30、微信小程序的优劣势?

优势:

      1、无需下载,通过搜索和扫一扫就可以打开。

      2、良好的用户体验:打开速度快。

      3、开发成本要比App要低。

      4、安卓上可以添加到桌面,与原生App差不多。

      5、为用户提供良好的安全保障。小程序的发布,微信拥有一套严格的审查流程,不能通过审查的小程序是无法发布到线上的。

劣势:

     1、限制较多。页面大小不能超过1M。不能打开超过5个层级的页面。

     2、样式单一。小程序的部分组件已经是成型的了,样式不可以修改。例如:幻灯片、导航。

     3、推广面窄,不能分享朋友圈,只能通过分享给朋友,附近小程序推广。其中附近小程序也受到微信的限制。

     4、依托于微信,无法开发后台管理功能。
上一篇 下一篇

猜你喜欢

热点阅读