源于新的jssc5的设想,开辟基于词法分析和语法分析的高亮器。当然,词法分析和语法分析我还在学习中,编译原理没好好学,大学时间那个悔啊……
简单测试了下,主要是性能方面。hax曾经做过chrome下面正则的测试,实验证明google浏览器对正则的优化真的很牛X!不过我考虑仍将继续基于flash平台来做,原因很显然:词法分析必须遍历字符串,而js的遍历性能目前来看是实在不敢恭维的。
大概排序一下吧:
直接比较字符串最快:s == “string”;
用as3内置的indexOf来寻找其次;
判断charCode和indexOf差不多:比如单个字符是否数字;
用isNaN结合parseInt来判断是否数字就比较慢了,但不限单个字符,大概是charCode的数倍到十倍,所以要综合考虑;
用正则最慢!这和js情况正好相反,但正则功能最强大,不过目前情况来看用到正则的可能性很少。
唔,jssc5搞定后JAse研究就能迈进一大步了。
—-
更新:
发现Array类的push()操作性能居然还不如手动写入?!
真晕啊,不知道Adobe搞什么鬼。
array.push(value)还不如array[array.length] = value;,当然舍却length用计数器还要快一点点。

回复自“as3中字符串相关操作测试(jssc5)”
发表回复