瀏覽器JS引擎是否實現了ECMAScript的closure?

來源:互聯網
上載者:User
There is a test.var test="wrong"
Object.prototype.test="right";

var score=0;

void function f0(){
    if(test=="right")score++;
}()

void function(){
    if(test=="wrong")score++;
}()

var e="right";
try{
    throw new Error;
} catch(e) {
    e="wrong";
    if(test=="right")score++;
}
if(e=="right")score++;

var f;
void function f(){
}
if(typeof f=="undefined")score++;

var err;
function a(){
    var m="right";
    var n;
    return function(){
        var err;
        return arguments[0].call(this,arguments[1]);
    }
}
try{
var b=a();
if(b(eval,"m")=="right")score++;
} catch(err) {
}

alert(score+"/6")

完全實現了ECMAScript3的JS引擎應該得到 6/6
然而
InternetExplorer8.0        2/6
FireFox3.0                      5/6
Opera9.5                        4/6
Safari3.1.1                     4/6

瀏覽器 IE FF Opera Safari

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.