0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 小程序

支持情况运行限制基于安全考虑,小程序中不支持动态执行JS代码

发表时间:2023-10-27 14:29:11

文章来源:炫佑科技

浏览次数:128

菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技

支持情况运行限制基于安全考虑,小程序中不支持动态执行JS代码

出于安全考虑,小程序中不支持动态执行JS代码,即:

标准支持

不同平台上小程序的JS执行环境不同,导致不同平台的标准支持存在差异。

为了尽可能平滑这些差异,小程序基础库内置了 core-js。 core-js可以补全平台环境中缺失的标准API。

需要注意的是,平台对语法支持的差异是无法消除的。 当你需要使用一些高级语法时,例如当你需要使用对这些语法的支持时。

不能的 API

以下接口在部分低版本客户端无法使用。 请尽可能小心避免使用它们。

与标准时序的差异

由于实现原因和iOS限制,模拟的是iOS环境下使用的。 这意味着触发的任务是普通任务,而不是微任务,这会导致iOS和标准之间的时序差异。

var arr = []
setTimeout(() => arr.push(6), 0)
arr.push(1)
const p = new Promise(resolve => {
  arr.push(2)
  resolve()
})
arr.push(3)
p.then(() => arr.push(5))
arr.push(4)
setTimeout(() => arr.push(7), 0)
setTimeout(() => {
  // 应该输出 [1,2,3,4,5,6,7]
  // 在 iOS 小程序环境,这里会输出 [1,2,3,4,6,5,7]
  console.log(arr)
}, 1000)

更多关于普通任务和微任务的区别微信小程序开发环境,请查看这篇文章

如何确定当前环境需要哪些目标和转码目标

特定小程序基础库版本有*低微信客户端版本要求。 例如,基础库 v2.15.0 要求 *低版本为 7.0.22,iOS *低版本为 7.0.20。

特定客户端版本有*低操作系统版本要求,例如 iOS 7.0.20 至少需要 iOS 10。

因此,当指定具体的小程序基础库版本时(可以在小程序管理页面【设置】-【基础设置】-【基础库*低版本设置】中设置)支持情况运行限制基于安全考虑,小程序中不支持动态执行JS代码,我们就可以得到需要的*低执行环境得到支持。

具体数据可以从这个开源库获取。

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多