OCaml最大年夜的特点就是其函数式说话特点,我们再看下其对于弗成变类型的支撑,我们应用OCaml stdlib实现的弗成变类型如下:
- module IntMap = Map.Make(struct
- type t = int
- let compare (x : int) y = compare x y
- end)
- let test () =
- let m = ref IntMap.empty in
- let count = 1000000 in
- for i = 0 to count do
- m := IntMap.add i i !m
- done;
- for i = 0 to count do
- ignore (IntMap.find i !m)
- done
- let () = test()
而如不雅要用Facebook Immutable实现的代码为:
- 'use strict';
- var Immutable = require('immutable');
- var Map = Immutable.Map;
- var m = new Map();
- function test() {
- var count = 1000000;
- for(var i = 0; i < count; ++i) {
- m = m.set(i, i);
- }
- for(var j = 0; j < count; ++j) {
- m.get(j);
- }
- }
- test();
机能评测下,二者的履行时光比较为:
- BuckleScript: 1186ms
- JavaScript: 3415ms
编译后的体积为:
- BuckleScript (production): 899 Bytes
- JavaScript: 55.3K Bytes
ReasonML
ReasonML与React师出同门,是基于OCamel设计的语法友爱、编辑器支撑程度高,并且有强大年夜的编译对象支撑的说话。建议浏览Sean Grove对ReasonML的介绍。本文简单介绍几个JavaScript与Reason的语法比较:
推荐阅读
Java 因为其实用性、跨平台性、可移植性等浩瀚长处一向备受开辟者青睐,在各大年夜编程说话排行榜中也一向居高不下,是以本文为 Java 开辟者们总结了这八个对象,它们几乎涵盖了Java开辟的全部范围,大年夜代码构建>>>详细阅读
本文标题:2017值得一瞥的JavaScript相关技术趋势
地址:http://www.17bianji.com/lsqh/34731.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示