asm.js使用示例代码


Posted in Javascript onNovember 28, 2013
function mymodule(global, foreign, buffer) {
    "use asm";
    // -------------------------------------------------------------------------
    // SECTION 1: imports
    var H32 = new global.Int32Array(buffer);
    var HU32 = new global.Uint32Array(buffer);
    var log = foreign.consoleDotLog;
    // -------------------------------------------------------------------------
    // SECTION 2: functions
    function f(x, y, z, w) {
        // SECTION A: parameter type declarations
        x = x|0;      // int parameter
        y = +y;       // double parameter
        // SECTION B: function body
        log(x|0);     // call into FFI -- must force the sign
        log(y);       // call into FFI -- already know it's a double
        x = (x+3)|0;  // signed addition
        // SECTION C: unconditional return
        return ((((x+1)|0)>>>0)/(x|0))>>>0; // compound expression
    }
    function g() {
        g_f = +g_i; // read/write globals
        return;
    }
    function g2() {
        return;
    }
    function h(i, x) {
        i = i|0;
        x = x|0;
        H32[(i&0xffffffff)>>4] = x; // masked by 2^k-1, shifted by byte count
        ftable_2[(x-2)&2]();        // dynamic call of functions in table 2
    }
    // -------------------------------------------------------------------------
    // SECTION 3: function tables
    var ftable_1 = [f];
    var ftable_2 = [g, g2]; // all of the same type
    // -------------------------------------------------------------------------
    // SECTION 4: globals
    var g_i = 0;   // int global
    var g_f = 0.0; // double global
    // -------------------------------------------------------------------------
    // SECTION 5: exports
    return { f_export: f, goop: g };
}
Javascript 相关文章推荐
制作高质量的JQuery Plugin 插件的方法
Apr 20 Javascript
网页打开自动最大化的js代码
Aug 22 Javascript
JS控制文本框textarea输入字数限制的方法
Jun 17 Javascript
使用js修改客户端注册表的方法
Aug 09 Javascript
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
Oct 11 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
Mar 05 Javascript
js 博客内容进度插件详解
Feb 19 Javascript
Bootstrap Table使用整理(一)
Jun 09 Javascript
Vue项目webpack打包部署到服务器的实例详解
Jul 17 Javascript
微信小程序实现验证码获取倒计时效果
Feb 08 Javascript
使用jquery Ajax实现上传附件功能
Oct 23 jQuery
vue+vant使用图片预览功能ImagePreview的问题解决
Apr 10 Javascript
jquery实现动态菜单的实例代码
Nov 28 #Javascript
JavaScript中的常见问题解决方法(乱码,IE缓存,代理)
Nov 28 #Javascript
原始XMLHttpRequest方法详情回顾
Nov 28 #Javascript
jQuery处理xml格式的返回数据(实例解析)
Nov 28 #Javascript
使用js写的一个简易的投票
Nov 27 #Javascript
juery框架写的弹窗效果适合新手
Nov 27 #Javascript
js使用数组判断提交数据是否存在相同数据
Nov 27 #Javascript
You might like
LotusPhp笔记之:Cookie组件的使用详解
2013/05/06 PHP
PHP使用递归算法无限遍历数组示例
2017/01/13 PHP
jQuery.extend 函数的详细用法
2012/06/27 Javascript
JS实现点击下载的小例子
2013/07/10 Javascript
浅析JavaScript中的typeof运算符
2013/11/30 Javascript
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
微信小程序 wx:for的使用实例详解
2017/04/27 Javascript
node跨域请求方法小结
2017/08/25 Javascript
Vue精简版风格指南(推荐)
2018/01/30 Javascript
浅谈在node.js进入文件目录的问题
2018/05/13 Javascript
webpack的CSS加载器的使用
2018/09/11 Javascript
vue计算属性computed的使用方法示例
2019/03/13 Javascript
ajax跨域访问遇到的问题及解决方案
2019/05/23 Javascript
JavaScript展开操作符(Spread operator)详解
2019/07/20 Javascript
对layui中table组件工具栏的使用详解
2019/09/19 Javascript
微信小程序自定义顶部组件customHeader的示例代码
2020/06/03 Javascript
vue自定义组件(通过Vue.use()来使用)即install的用法说明
2020/08/11 Javascript
python 递归遍历文件夹,并打印满足条件的文件路径实例
2017/08/30 Python
python文件操作之批量修改文件后缀名的方法
2018/08/10 Python
python调用百度REST API实现语音识别
2018/08/30 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
Python单元测试模块doctest的具体使用
2020/02/10 Python
python3 实现口罩抽签的功能
2020/03/11 Python
使用python实现下载我们想听的歌曲,速度超快
2020/07/09 Python
html5+CSS3+JS实现七夕言情功能代码
2017/08/28 HTML / CSS
中学生寄语大全
2014/04/03 职场文书
标准毕业生自荐信
2014/06/24 职场文书
2014年业务员工作总结范文
2014/11/17 职场文书
2014年幼儿园园务工作总结
2014/12/05 职场文书
西柏坡导游词
2015/02/05 职场文书
2016母亲节感恩话语
2015/12/09 职场文书
Windows 11上手初体验:任务栏和开始菜单等迎来大改
2021/11/21 数码科技
Python turtle编写简单的球类小游戏
2022/03/31 Python
深入理解mysql事务隔离级别和存储引擎
2022/04/12 MySQL