方法一:rpn.js:使用rpn.js实现eval函数功能
*** 作链接:网页链接
方法二:
(1)使用Underscore.js: *** 作链接:网页链接
(2)使用Immutable.js: *** 作链接:网页链接
(3)使用UUID、Base64、Chance: *** 作链接:网页链接
扩展微信小程序框架功能(1)——Promise
ES6 对 Promise 有了原生的支持,但微信开发者工具更新版本(0.11.112200)后, 移除了开发者工具对 ES6 中Promise 特性原生的支持, 需要引入第三方的 Promise 库。
扩展微信小程序框架功能(2)——Generator
Generator函森毕庆数是ES6提供的一种异步编程解决方案,语法行为与传统函数完全不同。
扩展微信小程序框架功能(3)——函数功能增强
Underscore.js 和 Lodash 是最常用的JavaScript库。
扩展微信小程序框架功能(4)——Immutable.js
Immutable.js 是 Facebook 开发的不可变数据集合。Immutable
Data(不可变数据)一旦创建就不能被修改。通过使用Immutable
Data,可以更容易的处理缓存、回退、数据变化检测此握等问题,应用开发更简单。
扩展微信小程序框架功能(5)——Redux
Redux 是数纯 JavaScript 状态容器,提供可预测化的状态管理。
扩展微信小程序框架功能(6)—日期时间
Moment.js是一个JavaScript的日期、时间处理工具类,其对于JavaScript的日期时间处理功能非常强悍和全面。可以用在浏览器环境中使用,也可以在Node.js中。
扩展微信小程序框架功能(7)——正则表达式
XRegExp 是一个开源的 JavaScript库,提供一个参数化、可扩展的支持各种浏览器的正则表达式的实现库,支持附加语法、标志以及方法。
扩展微信小程序框架功能(8)——Xml处理
x2js是一个 实现 XML 与 JavaScript 对象之间相互转换的工具库。
扩展微信小程序框架功能(9)——加解密
node-uuid可以快速地生成符合规范 的 UUID。js-base64可以实现Base64编码和解码。crypto-js可以非常方便地在 JavaScript 进行加解密。
扩展微信小程序框架功能(10)——测试辅助
Chance是一个 JavaScript 随机数生成工具。Mock.js可以生成随机数据,拦截 Ajax 请求。
方法三:moment
*** 作链接:网页链接
一、运行环境的不同。传统的HTML5的运行环境是浏览器,包括webview,而 小程序的运行环境并非完整的浏览器,大家注意,我这里写的是“非完整的浏览器”,有以下几个原因小程序的开发过程中会用到HTML5相关的技术(并非全部)小程序最后的发布上线需要 审核, 在不更新自身软件的情况下可以将小程序更新到自身软件内,这就联想到了ReactNative框架,并且已经有开发者在 小程序的开发工具源码中发现使用了React和NodeWebkit库官方文档中着重强调了脚本内是无法使用浏览器中常用的window对象和document对象(基于这一点,像zepto/jquery这种 *** 作dom的库就被完全抛弃了)所以我个人认为,小程序的运行环境很有可能是 开发团队基于浏览器内核完全重构的一个内置解析器,针对小程序专门做了优化,配合自己定义的开发语言标准,提升了小程序的性能。不过由于 给开发者提供了开发工具,而开发工具中也内置了编程、调试、开发环境、发布于一身,我们也不用再探讨它的最终运行环境了,只要按照官方文档进行开发就可以了。并且从 团队给开发者提供开发工具这一举动,让我联想到了苹果给开发者提供的X-CODE开发工具,可以想象 的“野心”可见一斑二、开发成本的不同。这里我提出了一个问题,当我们面对一个HTML5web开发渗敏需求时,我们需要考虑什么呢?抛去开发工具(vscode、sublimtext、Atom等)不谈,大到前端框架(Angular、react、vue、backbone等)、模块管理工具(Webpack、Browserify等)、任务管理工具(Grunt、Gulp等),小到UI库选择、接口调用工具(ajax、FetchApi等)、浏览器兼容性等都要我们一一考略,再不济用jqery插件写H5,也要在开发过程中去寻找合适的jquery插件来配合项目。尽管这些工具可定制化非常高,并且提高了开发者的开发效率,但我相信项目开发的配置工作已经消耗了不少精力,尽管大部分开发者都有自己的配置模板,但长久以来对于项目中使用的各种外部库的版本迭代、镇戚版本升级所产生的成本应该也不低。而当我们面对一个 小程序的开发需求时,我们需要考虑什么呢? 团队提供了开发者工具,并且规范了开发标准,前端常见的HTML、CSS变成了 自定义的WXML、WXSS,WXML中尽管全部是自定义标签,但官方文档中都有明确的使用介绍,相信上手应该是非常容易的;WXSS、JSON和JS文件中的写法稍有限制,但整体相差不多。在统一了这些标准之后,作为一个开发者,你会发现,自己只要专注写程序就可以了:当需要调用后端接口时,调用发起请求API当需要上传下载时,调用上传下载API当需要数据缓存时,调用本地存储API引入地图、使用罗盘、调用支付、调用扫码等等功能都可以直接使用UI库方面,框架自然带有自家weui库加成并且在使用这些API时,你不用再去顾虑浏览器兼容性,不用担心生产环境中出现不可预料的奇妙BUG,可见 小程序的开发成本确丛旅枝实相比以往的web开发低很多。三、获取系统级权限的不同。 小程序相对于HTML5web应用能获得的系统权限,比如网络通信状态、数据缓存能力等,这些系统级权限都可以和 小程序无缝衔接,也就是官方宣称的拥有NativeApp的流畅性能,而这一点恰巧是HTML5web应用经常被诟病的地方,这也是HTML5的大多应用场景被定位在业务逻辑简单、功能单一的原因。四、应用在生产环境的运行流畅度。这条无论对于用户还是开发者来说,都是最直观的感受。长久以来,当HTML5应用面对复杂的业务逻辑或者丰富的页面交互时,它的体验总是不尽人意,需要不断的对项目优化来提升用户体验。但是由于 小程序运行环境独立,尽管同样用html+css+js去开发,但配合 的解析器最终渲染出来的是原生组件的效果,自然体验上将会更进一步。请使用手机"扫一扫"x欢迎分享,转载请注明来源:内存溢出
评论列表(0条)