- 浏览: 508511 次
- 性别:
- 来自: 初到北京
最新评论
-
javamonkey:
有点老了,有个Teb测试,这个性能测试很标准http://gi ...
几款模板引擎的性能对比 -
greenlaw110:
xuyao 写道sdh5724 写道xuyao 写道很好,nn ...
几款模板引擎的性能对比 -
sefier:
不知道你看的是哪个版本的,现在所看到的版本和你所描述的不一致, ...
Facebook XHP 调研 -
javatar:
我觉得从通用语言去思考可能更有意思,满足八封其实就是一个完备集 ...
五行通天地 八卦定乾坤--打算按照先天八卦的形制重构Lite模版引擎的指令集 -
luo2pei4321:
MVEL的官方例子里面好像只支持Integer和String两 ...
表达式引擎JSEL介绍
引用
JSI 自身提供一些常用API,数量极少,尽量以一种正式的风格提供,尽量回避争议。
有些是启动文件用到的,如任务队列支持,还有如装饰引擎直接用到的,如BrowserInfo、EventUtil、StyleUtil等。
对于启动文件中未直接用到的,如果风格的争议太大,都将剔除出去。
有些是启动文件用到的,如任务队列支持,还有如装饰引擎直接用到的,如BrowserInfo、EventUtil、StyleUtil等。
对于启动文件中未直接用到的,如果风格的争议太大,都将剔除出去。
BrowserInfo对象:
/** * BrowserInfo 对象,用于判断浏览器的相关信息,如浏览器类型、quirks模式、客户端语言(简体中文?英语..未实现)、操作系统(未实现)等等。 * @public */ var BrowserInfo = { isIE : falseChecker, isOpera : falseChecker, isGecko : falseChecker, isNetscape : falseChecker, isMozilla : falseChecker, isFirefox : falseChecker, isKhtml : falseChecker, isSafari : falseChecker, isKonqueror : falseChecker, isQuirks : function(){…} };
其中最常用的要数 is<浏览器类别>(最小版本号码,最大版本号)。
此外,我还将BrowserInfo的函数拷贝到navigator对象上,这个有无必要呢?
//@Deprecated ??? for(var n in BrowserInfo){ window.navigator[n] = BrowserInfo[n]; }
不同之处:
现在在浏览器判断上面,一般是用常量表示,比如isIE之类的,JSI的BrowserInfo使用函数,以便提供更强大更灵活的功能。
EventUtil
EventType 对象的成员函数有:
addListener(el, type, fn, cap) removeListener(el, type, fn, cap) add<Eventtype>Listener(element, listener, captrue) 如addLoadListener,addMousedownListener,addMouseoutListener remove<Eventtype>Listener(element, listener, captrue) createEvent(type, canBubble, cancelable) dispatchEvent(el, even)
其中: <Eventtype>代表一种事件类型。
W3C事件类型有:
var events = ['click','mousedown','mouseup','mouseover','mousemove','mouseout','load','unload','abort','error','select','change','submit','reset','focus','blur','resize','scroll']. concat(['DOMFocusIn','DOMFocusOut','DOMActivate']);
此外,还添加了一种事件类型:DOMLoad。就是mozilla的DOMContentLoaded事件,在Dom树构造完成但图片资源等可能未完成时触发。
对于这种事件类型, element, captrue参数都将忽略。暂时只有添加函数,没有删除函数(有删除的必要吗?)。
不同之处:
这个事件处理函数集与其他常见方式的却别有:
1. this支持。IE的attach方法添加的函数,运行时this指向window对象,JSI吧这点给纠正过来,与w3c的addEventListener行为一致。
2. 事件类型直接体现在函数名中,这样有利于书写上的错误及早发现。
3. 事件格式化,将事件的访问方式格式化为W3C的方式。
4. 自动清理,这也不算不同吧,现在大多数JS库都提供这个功能,就是在离开页面时清理全部注册事件。但是这对一些单页程序是无效的(OPOA,本人也比较讨厌这种模式,呵呵),以后是否可以提供一个purgeElement函数,用于清理指定元素及其子元素的事件呢?
程序下载
这个API也可以脱离JSI使用,只是,在编写的时候,因为有了JSI的保护,我使用了不少内部变量,为避免可能的冲突,做了如下处理。
var BrowserInfo = function(){ //#include(browser-info.js).... return BrowserInfo; } var EventUtil = function(){ //#include(event-util.js).... return EventUtil; }
非常希望大家积极发表自己的看法,该修改就修改,如果争议太大,那么我将吧这些从系统API中移除。
- event-util.rar (6.6 KB)
- 下载次数: 55
评论
16 楼
afcn0
2007-10-25
hax 写道
legend 写道
我估计楼主是要在IE里模拟 capture,以楼主的 js 功力,模拟 capture 是轻而易举的!
模拟capture并非不可能,但是非常的麻烦。不是有js功力就一定可以搞定的。
比如,capture必须保持与bubble一个合理的触发顺序,你必须保证一个事件在dom树上完成所有注册的capture事件,然后再bubble。这点就非常头大了。例如我在div上capture一个click事件,我可以实际上先attach一个,但是我要保证在这个div上bubble的事件函数必须在capture的事件函数完成后再执行,这意味着普通的bubble事件函数也不能直接attach进去(否则无法保证执行顺序)。
进一步,如果我又在div的一个子元素span上capture一个click事件,那么同样的处理,但是我要保证先去触发外层div上的capture事件函数,然后是span上的capture事件函数,然后再是span上的bubble事件函数。问题是你还必须处理当click事件被bubble到div上后,不能把已经执行过的div上的capture事件再执行一遍!
好了,这只是基本的,再考虑一下cancel bubble,考虑一下stop propagation,考虑一下mousedown,click,mouseup,dblclick的事件顺序……
首先ie是不支持capture,不支持就是不支持,就好象scheme里面if不能用cond模拟一样,其次capture不是那么有用,可以统计下所有的js脚本,addEventListener第三参数为true估计不到1%,那1%当中应该还有一半是教学使用,并且Dustin Diaz曾在其blog称capture为"near evil",所以模拟这个基本没什么用,Prototype也从来不模拟,也不给true的observe在ie上面抛异常.所以最好还是简单点,不支持就是不支持,就好象ie的gEBI函数,总把name当id,也没有在$函数里面修正过.
15 楼
jindw
2007-06-06
我起初并没有想过提供这个API库,但是后来引导脚本写大了,发现很多东西完全可以抽出来共用。所以才有了js命名空间下的这些类库,这些类库依然只是提供非常基础的东西,太具体的功能,还是留给类库开发人员去用吧。
14 楼
jindw
2007-06-06
hax 写道
个人建议EventUtil和StyleUtil这样的,不应该作为“正式API”(其实我不太了解你这个“正式”的含义,我把它理解成具有一个特殊package,默认导入的脚本)。因为可能别的类库有更好的解决方案,例如base2。
说它正式,是说,只要用jsi,那么这个东西你最好带上,不一定非要默认导入,但是最好可以导入。
现在占用的时js.*.*包。
不过,我上面提到的正式,只是强调风格的正式(也不知道自己用词是否确切,呵呵),能让大多数人接受,不求高度的灵活。
比如说,jQuery的风格就是灵活,不是正式。
13 楼
jindw
2007-06-06
hax 写道
EventUtil的目标是什么?抹平事件模型的差异?还是仅提供一个语法表层的一致性?
如果是前者的话,意味着很多内容,例如在IE上如何模拟capture阶段。否则的话,你要么去掉capture参数,要么在IE里如果capture的话扔异常出来。
如果是前者的话,意味着很多内容,例如在IE上如何模拟capture阶段。否则的话,你要么去掉capture参数,要么在IE里如果capture的话扔异常出来。
对,尽量抹平事件模型的差异,但是也考虑一下代价,比如 capture我就不想去模拟了。主要是担心运行时的代价。
capture扔异常的问题,也可以考虑一下。
后者当能也是。
此外,还提供一些诸如清理内存泄漏之类的行为。
12 楼
jindw
2007-06-06
hax 写道
DOMLoad这个名字不好,可以仍使用DOMContentLoaded,或者用IE的DocumentReady或ContentReady(htc 事件名)。我个人比较喜欢ContentReady这个名字,而且这个名字的事件,其实可以作用于所有元素上,表示该元素已经闭合,可以安全的用dom方法来访问了。
名字的问题确实是众口难调啊。呵呵
DOMReady 如何?ContentReady这个,主要是,一提到Content 就让我想到里面的资源如图片等。
所以,我个人比较忌讳Content
11 楼
jindw
2007-06-06
hax 写道
BrowserInfo建议如下:
浏览器检测
isIE 仅对windows下IE 4+起作用(从使用习惯来说,不宜包括Mac IE)
isWinIE isIE的别名
isMacIE Mac IE 5
isFF isFirefox的别名,给Firefox以特别优待,呵呵
浏览器检测
isIE 仅对windows下IE 4+起作用(从使用习惯来说,不宜包括Mac IE)
isWinIE isIE的别名
isMacIE Mac IE 5
isFF isFirefox的别名,给Firefox以特别优待,呵呵
我看还是先isIE 吧,操作系统以后用其他函数去判断。
hax 写道
基于IE内核的浏览器检测
isMSIE 标准IE(实现疑问:技术上是否能排除利用IE内核的?)
isMaxthon
isTT 腾讯
isEZPLAY 盛大EZPLAY平台
... 很多其它的,慢慢加吧
确实,这个估计很难实现,先放一边
hax 写道
引擎检测
isGecko 参数是Gecko的版本
isTrident 类似isIE,但是参数含义可能不一样
isTasman 类似isMacIE,但是参数含义可能不一样
isPresto 类似isOpera,但是参数含义可能不一样
isWebCore 类似isSafari,但是参数含义可能不一样
isKHTML 建议改为大写,既然IE全大写,那应该也给KHTML同等待遇吧,呵呵
这个参数,我还是觉得统一的方式比较好
现在都是
isXX(minVersion,maxVersion)//两个参数都是可选的
isIE()//只要是ie就行
isIE(5.5)//5.5及后续版本
isIE(null,6)//ie 6或者以前的版本
isIE(5,5.6)//ie 5 到IE5.5或者以前的版本
hax 写道
应该去掉isQuirks,因为quirk是页面特征,而不仅仅是浏览器信息。例如,我的页面是标准模式,但内部包含的一个iframe可能是怪癖模式。
这个是有点不合理,打算去掉。
hax 写道
复制到navigator上,我认为挺好的,但是无声无息的加上去可能不好,可以规定必须import jsi.browser.BrowserInfo才会自动加上,然后默认是import的,不喜欢的人可以去掉默认import,呵呵。
因为Browser在启动脚本中用到,所以,没有办法避免。只要用了,一定自动加上了。技术上比较难处理
hax 写道
另,也可增加脚本引擎对象。
这个还是缓一步吧,要不能启动脚本文件大小又要往上蹦了。
10 楼
jindw
2007-06-06
sp42 写道
引用
以后是否可以提供一个purgeElement函数,用于清理指定元素及其子元素的事件呢?
不能不要呀,实际CASE中正因为lib有这个函数,帮我解决了一个问题。
这个问题先排上。
9 楼
legend
2007-06-06
这么复杂啊,看得我头都晕了呢。越来越佩服 hax 的功力了!
8 楼
hax
2007-06-06
legend 写道
我估计楼主是要在IE里模拟 capture,以楼主的 js 功力,模拟 capture 是轻而易举的!
模拟capture并非不可能,但是非常的麻烦。不是有js功力就一定可以搞定的。
比如,capture必须保持与bubble一个合理的触发顺序,你必须保证一个事件在dom树上完成所有注册的capture事件,然后再bubble。这点就非常头大了。例如我在div上capture一个click事件,我可以实际上先attach一个,但是我要保证在这个div上bubble的事件函数必须在capture的事件函数完成后再执行,这意味着普通的bubble事件函数也不能直接attach进去(否则无法保证执行顺序)。
进一步,如果我又在div的一个子元素span上capture一个click事件,那么同样的处理,但是我要保证先去触发外层div上的capture事件函数,然后是span上的capture事件函数,然后再是span上的bubble事件函数。问题是你还必须处理当click事件被bubble到div上后,不能把已经执行过的div上的capture事件再执行一遍!
好了,这只是基本的,再考虑一下cancel bubble,考虑一下stop propagation,考虑一下mousedown,click,mouseup,dblclick的事件顺序……
7 楼
legend
2007-06-06
嗯,可以作为一个 JSI 的工具包,用户可以按需加载的。
6 楼
hax
2007-06-06
个人建议EventUtil和StyleUtil这样的,不应该作为“正式API”(其实我不太了解你这个“正式”的含义,我把它理解成具有一个特殊package,默认导入的脚本)。因为可能别的类库有更好的解决方案,例如base2。
5 楼
legend
2007-06-06
我估计楼主是要在IE里模拟 capture,以楼主的 js 功力,模拟 capture 是轻而易举的!
4 楼
hax
2007-06-06
EventUtil的目标是什么?抹平事件模型的差异?还是仅提供一个语法表层的一致性?
如果是前者的话,意味着很多内容,例如在IE上如何模拟capture阶段。否则的话,你要么去掉capture参数,要么在IE里如果capture的话扔异常出来。
如果是前者的话,意味着很多内容,例如在IE上如何模拟capture阶段。否则的话,你要么去掉capture参数,要么在IE里如果capture的话扔异常出来。
3 楼
hax
2007-06-06
DOMLoad这个名字不好,可以仍使用DOMContentLoaded,或者用IE的DocumentReady或ContentReady(htc事件名)。我个人比较喜欢ContentReady这个名字,而且这个名字的事件,其实可以作用于所有元素上,表示该元素已经闭合,可以安全的用dom方法来访问了。
2 楼
hax
2007-06-06
BrowserInfo建议如下:
浏览器检测
isIE 仅对windows下IE 4+起作用(从使用习惯来说,不宜包括Mac IE)
isWinIE isIE的别名
isMacIE Mac IE 5
isFF isFirefox的别名,给Firefox以特别优待,呵呵
基于IE内核的浏览器检测
isMSIE 标准IE(实现疑问:技术上是否能排除利用IE内核的?)
isMaxthon
isTT 腾讯
isEZPLAY 盛大EZPLAY平台
... 很多其它的,慢慢加吧
也可以不用函数,提供 name,version和vendor属性(参考navigator对象)
引擎检测
isGecko 参数是Gecko的版本
isTrident 类似isIE,但是参数含义可能不一样
isTasman 类似isMacIE,但是参数含义可能不一样
isPresto 类似isOpera,但是参数含义可能不一样
isWebCore 类似isSafari,但是参数含义可能不一样
isKHTML 建议改为大写,既然IE全大写,那应该也给KHTML同等待遇吧,呵呵
engine检测较少用,所以也可以去掉这些函数,而提供engineName, engineVersion属性。
应该去掉isQuirks,因为quirk是页面特征,而不仅仅是浏览器信息。例如,我的页面是标准模式,但内部包含的一个iframe可能是怪癖模式。
复制到navigator上,我认为挺好的,但是无声无息的加上去可能不好,可以规定必须import jsi.browser.BrowserInfo才会自动加上,然后默认是import的,不喜欢的人可以去掉默认import,呵呵。
另,也可增加脚本引擎对象。
形如:
ScriptEngine {
name // 字符串,返回如 SpiderMonkey
version //
vendor // 返回如 Mozilla
isJavaScriptCompatible(ver)
isJScriptCompatible(ver)
isSpiderMonkey(minVer, maxVer) // Firefox
isRhino // 多数Java编写的浏览器
isJScript // IE
isKJS // Konqueror, Safari
isJavaScriptCore // Safari
isLinear_b // Opera
// 以下是比较少见的引擎,没有也罢
isInScript // iCab浏览器
isDMDScript // 可替换JScript用于IE
isNJS // Python
}
浏览器检测
isIE 仅对windows下IE 4+起作用(从使用习惯来说,不宜包括Mac IE)
isWinIE isIE的别名
isMacIE Mac IE 5
isFF isFirefox的别名,给Firefox以特别优待,呵呵
基于IE内核的浏览器检测
isMSIE 标准IE(实现疑问:技术上是否能排除利用IE内核的?)
isMaxthon
isTT 腾讯
isEZPLAY 盛大EZPLAY平台
... 很多其它的,慢慢加吧
也可以不用函数,提供 name,version和vendor属性(参考navigator对象)
引擎检测
isGecko 参数是Gecko的版本
isTrident 类似isIE,但是参数含义可能不一样
isTasman 类似isMacIE,但是参数含义可能不一样
isPresto 类似isOpera,但是参数含义可能不一样
isWebCore 类似isSafari,但是参数含义可能不一样
isKHTML 建议改为大写,既然IE全大写,那应该也给KHTML同等待遇吧,呵呵
engine检测较少用,所以也可以去掉这些函数,而提供engineName, engineVersion属性。
应该去掉isQuirks,因为quirk是页面特征,而不仅仅是浏览器信息。例如,我的页面是标准模式,但内部包含的一个iframe可能是怪癖模式。
复制到navigator上,我认为挺好的,但是无声无息的加上去可能不好,可以规定必须import jsi.browser.BrowserInfo才会自动加上,然后默认是import的,不喜欢的人可以去掉默认import,呵呵。
另,也可增加脚本引擎对象。
形如:
ScriptEngine {
name // 字符串,返回如 SpiderMonkey
version //
vendor // 返回如 Mozilla
isJavaScriptCompatible(ver)
isJScriptCompatible(ver)
isSpiderMonkey(minVer, maxVer) // Firefox
isRhino // 多数Java编写的浏览器
isJScript // IE
isKJS // Konqueror, Safari
isJavaScriptCore // Safari
isLinear_b // Opera
// 以下是比较少见的引擎,没有也罢
isInScript // iCab浏览器
isDMDScript // 可替换JScript用于IE
isNJS // Python
}
1 楼
sp42
2007-06-06
引用
以后是否可以提供一个purgeElement函数,用于清理指定元素及其子元素的事件呢?
不能不要呀,实际CASE中正因为lib有这个函数,帮我解决了一个问题。
发表评论
-
JSA 发布一个新的预览版本
2009-07-27 01:15 1484主要功能是: 1。带上了原来的经典UI界面。 增加了一 ... -
CGI还是个不错的玩意
2009-06-20 18:52 998JSI的调试辅助程序目前提供有JavaServlet版本和ph ... -
用两句话来解释JSI是怎么隔离JavaScript变量冲突的
2009-06-01 17:08 1301“我还是一直没有明白jsi是怎么隔离名字空间的” 好,大家的 ... -
端午在家搞了一个基于JSI的脚本发布系统
2009-05-31 13:06 1354项目上线之前,脚本都要手动重新组合压缩。挺麻烦的,JSICDN ... -
把JSA部署在GoogleAppEngine上,迎接我的是一张笑脸^_^
2009-05-03 02:47 1028第一个无意的测试,结果打印出了一张笑脸^_^ 只是随便输的.真 ... -
关于JSI装饰引擎改进的一些想法
2009-02-16 18:29 908今天看到bellstar大侠发布的SUI,也看了一些设计及实现 ... -
水月镜花
2009-02-07 21:11 1006刚才cctv4在播放着《激情燃烧的岁月》。一些情节开始看着很有 ... -
韬光养晦 厚积薄发
2008-10-22 21:34 2096最近被反复问道,JSI还在继续吗? 开始感觉很诧异,后来想想也 ... -
脚本全局变量探测程序
2008-08-28 23:20 1659为了支持JSI包定义中的模式匹配(方便某些懒人)。我需要一个查 ... -
JSI 类库文件格式探讨
2008-08-05 20:08 2613在JSI中打包脚本类库。 目前只有jar方式,同时支持java ... -
使用中间数据格式优化前端模板性能的想法
2008-06-12 21:24 1814前端时间这里出现了不少讨论前端模板的帖子。 我还是原来的观点 ... -
JSA压缩Prototype1.6时,经常表现的一个错误
2008-05-07 21:15 2445开始发帖错误,我的测试不够严谨。 经过测试,IE也没有踩 ... -
发布一个JSI Example Project
2008-04-30 14:58 4037部署到Tomcat中,打开script目录,可以显示你当前sc ... -
JSI Side 代码风格与规范
2008-04-29 22:07 6113准备编写JSI的外围元素 ... -
给大家展示一下JSI文档工具和导出工具
2008-02-21 11:43 3661演示地址(目前只支持Firefox): http://www. ... -
JSI的延迟装载和异步装载过程的一些原理解释
2008-02-14 17:13 6421出自该贴的回复: http://www.iteye.com/t ... -
JSIDoc设计的两个失败点
2008-02-08 00:11 3671JSIDoc是我一年前开发的用来解析JS文档的纯客户端脚本程序 ... -
JSI的导入指令参数顺序调整意见征询
2008-02-07 17:20 7905改动 2.0方式: $import(path,callbac ... -
JSI2.1计划
2008-01-01 21:13 7122先回顾历史: JSI1(2006-2007)是个简单的框架,只 ... -
JSA 压缩JS时的常见问题
2007-12-30 16:08 42031。保留字滥用 如果你的脚本中存在某些保留字或者关键字属性甚至 ...
相关推荐
JSI Wikifier OpenAPI规范 JSI Wikifier API文档存储库。链接文档: : SwaggerUI: ://jsi-eubusinessgraph.github.io/jsi-wikifier-api/swagger-ui/ 看完整规格: JSON YAML 警告:仅当Travis CI完成部署后,以上...
JSI框架提供一个无侵入的脚本库管理解决方案,和一个全面的前端开发调试、文档解析、模版编译、打包导出环境支持。 作为一个开发期间的脚本管理工具,让开发者在开发期间享受JSI带来的种种便捷,也可以作为一个运行...
6. **doc**:文档目录,可能包含API参考、用户指南、开发者教程等,是理解项目的重要资源。 7. **styles**:CSS样式表,用于定义网页的外观和布局。这里可能有多个CSS文件,分别对应不同部分或主题的样式。 8. **...
根据提供的信息,我们可以了解到这份文档是关于海尔液晶电视电源板(型号:0094001224B JSI-190419-050 JSI-220409-050)的原理图。这份原理图详细地展示了电源板的内部电路结构、元件布局及其连接方式等关键信息。...
这是JSI-GAN(AAAI2020)的官方存储库。 我们提供了培训和测试代码,以及经过训练的权重和用于JSI-GAN的数据集(train + test)。 如果您发现此存储库有用,请考虑引用我们的。 参考: Soo Ye Kim *,Jihyong Oh ...
Node.js中提供了许多内置的流API,如Readable、Writable、Transform和Duplex流,学习如何在JSI中操作这些流对于处理大文件或网络数据传输等场景至关重要。 "学习你的节点"可能是指掌握Node.js环境下的开发技巧,...
react-native-multithreading using使用JSI的React Native的快速简便的多线程处理。 安装npm install react-native-multithreading npx pod-i react-native-multithreading using使用JSI进行React Native的快速简便...
### 海尔液晶电视电源背光板0094001274E JSI-320411原理图解析 #### 概述 本文将详细解析海尔液晶电视电源背光板0094001274E JSI-320411原理图中的关键元件及其功能、电路设计思路与工作原理,帮助读者更好地理解该...
- **官方文档**:阅读OpenHarmony官方提供的详细教程和API参考,了解框架的基本用法和最佳实践。 - **示例代码**:通过分析 Arkui_ace_engine_lite-master 中的示例项目,理解框架的运行机制和组件使用。 - **社区...
3. **查询接口**:JSI应该提供API供用户执行不同类型的查询,例如,查找与特定对象相交的所有对象、查找在特定区域内的一切对象等。 4. **优化策略**:在大型数据集上,为了保持查询效率,JSI可能会包含一些优化...
14. **Web API**:如Fetch API、WebSocket等,用于与浏览器进行交互,实现数据通信和实时通讯。 15. **性能优化**:包括减少HTTP请求、缓存策略、代码压缩等,提高网站加载速度和用户体验。 在HDT-JSI01-master这...
Jsi是带有内置websocket-server,sqlite和C -extensibility的javascript -ish解释器。 | | | 快速开始下载适用于 / 的二进制文件: wget ...
eccl-jsi.github.io
在Android开发中,自定义控件是提升应用用户体验和界面美观度的重要手段。本文将深入探讨如何使用Canvas来实现自定义的三种方式进度条。Canvas是Android图形绘制的基础,通过它可以进行复杂的图形操作,包括线条、...
JSI空间索引特意限制了特征,在少数事情上做得很好。 它特别快。 该代码是开源的,并在 2.1 或更高版本下发布。 用法 强烈建议首先查看位于 的 jsi-examples 存储库。 简而言之,您需要像这样初始化 RTree: // ...
:thread: 使用JSI的React Native的快速简便的多线程处理。 安装 npm install react-native-multithreading npx pod-install 需要包括的react-native-reanimated版本。 您可以自己打补丁,也可以等到它发布后再...
javascript sfs多个关键字请用空格分隔,最多填写5个。点击右侧Tag快速添加
通过React 5的MD5的JSI绑定,以极快的速度实现C ++实现。 确认它比在iPhone 11 Pro上使用快10倍,在Essential Phone上快8倍。 您可以在下查看基准测试。 安装 npm install react-native-quick-md5 用法 import { ...
在实际应用中,JSencrypt.min.js库提供了简单易用的API接口。例如,你可以通过以下代码创建一个RSA密钥对: ```javascript var encrypt = new JSEncrypt(); encrypt.setPublicKey('-----BEGIN PUBLIC KEY-----...--...
3. **Java Scripting Interface (JSI)**:VRML97引入了JSI,允许在VRML场景中嵌入脚本,包括Java代码。这使得开发者可以在VRML场景中直接使用Java,提高了灵活性和性能。 4. **X3D**:作为VRML的后续标准,X3D在...