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的Select选择框的华丽变身
Aug 23 Javascript
情人节之礼 js项链效果
Feb 13 Javascript
JQuery以JSON方式提交数据到服务端示例代码
May 05 Javascript
checkbox批量选中,获取选中项的值的简单实例
Jun 28 Javascript
IONIC自定义subheader的最佳解决方案
Sep 22 Javascript
JS基于正则实现数字千分位用逗号分隔的方法
Jun 16 Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
Dec 26 Javascript
jQuery第一次运行页面默认触发点击事件的实例
Jan 10 jQuery
解决vue单页使用keep-alive页面返回不刷新的问题
Mar 13 Javascript
vue实现将一个数组内的相同数据进行合并
Nov 07 Javascript
JS几个常用的函数和对象定义与用法示例
Jan 15 Javascript
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
Aug 19 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
一个简单的PHP入门源程序
2006/10/09 PHP
php函数指定默认值方法的小例子
2013/12/04 PHP
PHP对象递归引用造成内存泄漏分析
2014/08/28 PHP
PHP中通过trigger_error触发PHP错误示例
2015/06/23 PHP
利用“多说”制作留言板、评论系统
2015/07/14 PHP
Thinkphp5.0框架视图view的循环标签用法示例
2019/10/12 PHP
Exjs 入门篇
2010/04/07 Javascript
JQuery 返回布尔值Is()条件判断方法代码
2012/05/14 Javascript
JavaScript字符串对象toLowerCase方法入门实例(用于把字母转换为小写)
2014/10/17 Javascript
基于JQuery和CSS3实现仿Apple TV海报背景视觉差特效源码分享
2015/09/21 Javascript
你有必要知道的25个JavaScript面试题
2015/12/29 Javascript
JS实现响应鼠标点击动画渐变弹出层效果代码
2016/03/25 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
2016/12/20 Javascript
Node.js如何使用Diffie-Hellman密钥交换算法详解
2017/09/05 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
2017/09/12 Javascript
egg.js的基本使用和调用数据库的方法示例
2019/05/18 Javascript
vue实现抖音时间转盘
2019/09/08 Javascript
浅析Vue 中的 render 函数
2020/02/28 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
[05:01]3.19DOTA2发布会 我们都是刀塔人
2014/03/25 DOTA
Python获取指定字符前面的所有字符方法
2018/05/02 Python
Python 获取div标签中的文字实例
2018/12/20 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
2019/08/10 Python
pip 安装库比较慢的解决方法(国内镜像)
2019/10/06 Python
Django框架安装方法图文详解
2019/11/04 Python
Python编程快速上手——正则表达式查找功能案例分析
2020/02/28 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
在 Python 中使用 7zip 备份文件的操作
2020/12/11 Python
印度最大的旅游网站:MakeMyTrip
2016/10/05 全球购物
公司市场部岗位职责
2013/12/02 职场文书
cf收人广告词
2014/03/14 职场文书
工伤事故赔偿协议书(标准)
2014/09/29 职场文书
房屋租赁协议书(标准版)
2014/10/02 职场文书
班级元旦晚会开幕词
2015/01/29 职场文书
小学思品教学反思
2016/02/20 职场文书
解决Oracle数据库用户密码过期
2022/05/11 Oracle