ecmascript-5

    3熱度

    4回答

    爲什麼Object._ proto _ instanceof函數給我false? alert(Object.__proto__); // clearly Object.__proto__ is a function right? alert(typeof Object.__proto__); // clearly Object.__proto__ is a function right? al

    3熱度

    4回答

    我正在尋找寫出javascript的更高級語言。換句話說,這種語言與JavaScript的關係類似於C++與彙編代碼的關係。 這個更高級的語言的要求是類型安全,容易重構,能夠有類,繼承等等(像java/C#/ vb.net一樣)。 優點是我可以用這種更高級別的語言進行編碼,而不必依靠「黑客」將繼承帶到JavaScript。此外,我不必做任何運行時類型/鴨檢查,因爲更高級別的語言會強加類型安全限制,

    4熱度

    2回答

    我不明白爲什麼每個人都使用Boy.prototype = new Human;來模擬繼承。看,我們想要的是A的功能嗎?我們可以做到這一點,而沒有實例化一個新的A(實際上實例化一個新的A會給我們帶來不希望的結果,因爲我們實際上正在運行實例化函數,這不是我們想要的) 所以不是這個更好的解決方案? for (var prop_name in Human.prototype) { Object.defi

    4熱度

    1回答

    typeof value === "undefined"和value === undefined之間有區別嗎? 爲什麼JavaScript在ECMAScript 5中需要Array.isArray()?我不能撥打value instanceof Array來確定一個給定的變量是否是一個數組?

    8熱度

    1回答

    哪些瀏覽器不支持對象原型的get和set方法?我相信這是ES5的一個特性,我知道它適用於Chrome,但我想知道是否可以安全地使用ajax應用程序。這裏有一個例子: var foo = function() {}; foo.prototype = { get name() { return this._name; }, set name (n) {

    10熱度

    1回答

    幾乎所有的JS文件都包含在匿名函數中。如果我在匿名函數外包含"use strict";,嚴格模式仍然適用於匿名函數嗎? 例如,在下面的腳本應用於匿名函數內部主體嚴格模式: "use strict"; (function() { // Is this code running under strict mode? })();

    3熱度

    2回答

    // temp data var array = [1,2,function() { }, 3, function() { }]; var cb = function() { console.log("foo"); } var found = false; console.log(_.map(array, function(val) { if (_.isFunction(va

    2熱度

    2回答

    假設我有這樣的事情在JavaScript: var obj = { name: "Luis" }; Object.seal(obj); obj.address = "Fx"; //what should happen here? 那麼,什麼是正確的行爲?這不是嚴格模式,所以我認爲obj.address行將被忽略。但是,這不是因爲它在Chrome中拋出。我在看的V8測試,它似乎像它應該嚴格

    5熱度

    1回答

    有誰知道是否存在測試ECMAScript 5支持的測試套件(例如,編寫在QUnit中)?

    6熱度

    1回答

    我知道Object.defineProperty是非常有趣和很好的替代__defineGetter__和__defineSetter__非標準API,但是有沒有類似的對應__lookupGetter__?或者某種方式實現類似的事情?