美文网首页
小程序与普通网页开发的区别以及小程序的执行环境

小程序与普通网页开发的区别以及小程序的执行环境

作者: 天幕下悠悠 | 来源:发表于2019-01-15 17:42 被阅读0次

小程序与普通网页开发的区别

​ 小程序的主要开发语言是 JavaScript ,所以通常小程序的开发会被用来同普通的网页开发来做对比。两者有很大的相似性,对于前端开发者而言,从网页开发迁移到小程序的开发成本并不高,但是二者还是有些许区别的。

​ 网页开发渲染线程和脚本线程是互斥的,这也是为什么长时间的脚本运行可能会导致页面失去响应,而在小程序中,二者是分开的,分别运行在不同的线程中。网页开发者可以使用到各种浏览器暴露出来的 DOM API,进行 DOM 选中和操作。而如上文所述,小程序的逻辑层和渲染层是分开的,逻辑层运行在 JSCore 中,并没有一个完整浏览器对象,因而缺少相关的DOM API和BOM API。这一区别导致了前端开发非常熟悉的一些库,例如 jQuery、 Zepto 等,在小程序中是无法运行的。同时 JSCore 的环境同 NodeJS 环境也是不尽相同,所以一些 NPM 的包在小程序中也是无法运行的。

​ 网页开发者需要面对的环境是各式各样的浏览器,PC 端需要面对 IE、Chrome、QQ浏览器等,在移动端需要面对Safari、Chrome以及 iOS、Android 系统中的各式 WebView 。而小程序开发过程中需要面对的是两大操作系统 iOS 和 Android 的微信客户端,以及用于辅助开发的小程序开发者工具,小程序中三大运行环境也是有所区别的,如表1-1所示。

表1-1 小程序的运行环境

image.png

​ 网页开发者在开发网页的时候,只需要使用到浏览器,并且搭配上一些辅助工具或者编辑器即可。小程序的开发则有所不同,需要经过申请小程序帐号、安装小程序开发者工具、配置项目等等过程方可完成。

小程序的执行环境

不同的平台的小程序的脚本执行环境也是有所区别的。

小程序目前可以运行在三大平台:

  1. iOS平台,包括iOS9、iOS10、iOS11
  2. Android平台
  3. 小程序IDE

这种区别主要是体现三大平台实现的 ECMAScript 的标准有所不同。截止到当前一共有七个版本的ECMAScript 标准,目前开发者大部分使用的是 ECMAScript 5 和 ECMAScript 6 的标准,但是在小程序中, iOS9和iOS10 所使用的运行环境并没有完全的兼容到 ECMAScript 6 标准,一些 ECMAScript 6 中规定的语法和关键字是没有的或者同标准是有所不同的,例如:

  1. 箭头函数
  2. let const
  3. 模板字符串

所以一些开发者会发现有些代码在旧的手机操作系统上出现一些语法错误。为了帮助开发者解决这类问题,小程序IDE提供语法转码工具帮助开发者,将 ECMAScript 6代码转为 ECMAScript 5代码,从而在所有的环境都能得到很好的执行。

开发者需要在项目设置中,勾选 ES6 转 ES5 开启此功能。

image.png

相关文章

  • 小程序原理

    小程序与普通网页开发的区别 小程序的主要开发语言是 JavaScript,小程序的开发同普通的网页开发相比有很大的...

  • 小程序与普通网页开发的区别以及小程序的执行环境

    小程序与普通网页开发的区别 ​ 小程序的主要开发语言是 JavaScript ,所以通常小程序的开发会被用来同普通...

  • 微信小程序开发(微信小程序与普通网页开发的区别和联系)

    1. 小程序与普通网页开发的区别 (1)开发语言 小程序的主要开发语言是 JavaScript 小程序的开发同普通...

  • JS原生面试题篇

    1:小程序与普通网页开发的区别? 小程序开发的主要语音是JS。app.json的全局小程序配置,包括了小程序的所有...

  • 小程序开发入门

    一:小程序开发与普通网页开发的区别1.1区别 1.2 获取appid 二:项目构成 2.1小程序项目的基本构成 2...

  • 小程序开发基础

    小程序与普通网页开发的区别 网页开发渲染线程和脚本是一个过程,而小程序二者是分开的,分别运行在不同的线程 网页开发...

  • 微信小程序的开发与原理

    微信小程序的开发与原理 1, 小程序与普通网⻚开发的区别 小程序的主要开发语言是 JavaScript ,小程序的...

  • 认识小程序

    一、认识小程序 1.什么是小程序? 小程序是一种不需要下载,安装即可使用的应用 2.小程序与普通网页开发的区别? ...

  • 小程序渲染层和逻辑层交互原理

    小程序开发和网页开发的区别 小程序运行环境 渲染页面的技术选型 小程序渲染层和逻辑层交互的关系 Native指的是...

  • wx小程序-01

    小程序与普通网页的区别 :1.线程网页开发是单线程的,js线程和渲染线程是互斥的。小程序有一条js逻辑线程和多条渲...

网友评论

      本文标题:小程序与普通网页开发的区别以及小程序的执行环境

      本文链接:https://www.haomeiwen.com/subject/hinydqtx.html