比较版本

JS 引擎比较

更改版本

修订版 519603:

由 Kennyluck 在 进行的修订 519603

修订版 519605:

由 Kennyluck 在 进行的修订 519605

标题:
JS 引擎比较
JS 引擎比较
网址缩略名:
SpiderMonkey/Comparision_of_JS_engines
SpiderMonkey/Comparision_of_JS_engines
内容:

修订版 519603
修订版 519605
tt185    <h2>
186      代码美观
187    </h2>
188    <p>
189      <em>这件事实在</em><em>不应该是决定使用哪个 JS 引擎的因素,不过……</em>
190    </p>
191    <p>
192      如果(不幸的)需要以 SpiderMonkey 作为基础调优则会碰到以下问题:
193    </p>
194    <ol>
195      <li>C 与 C++ 代码混用。SpiderMonkey 原先是 C 写成的,后来大规模的以 C++ 改进,但是留下
 >了很多残骸:宏、不是宏但是名称是大写的函数。(参见 <code>JS::Value</code> 的说明。)
196      </li>
197      <li>成员变量命名缺乏规则:<code>ObjectImpl::slots</code> 与 <code>Objec
 >tImpl::shape_</code> 同时存在(前面那个应该加底线)。这个或许是可以修复的 bug。
198      </li>
199      <li>Apple 代码。SpiderMonkey 的组译器是 JavaScriptCore 的,那些类的成员变量是 
 ><code>m_buffer</code> 等等,与上面不同。另外还有 <code>WTF_*</code> 宏。真是 WTF。
200      </li>
201      <li>文档命名缺少规则。C 时代的档名是 <code>jsobj.h</code>,C++ 时代的档名是 <code
 >>Value.h</code> 。请自重。
202      </li>
203    </ol>

返回历史