ecmascript-5

    4熱度

    3回答

    面對一個問題JavaScript Date功能,returns "Date {Invalid Date}"在Firefox瀏覽器,但在谷歌瀏覽器工作正常。 // My Input is new Date("Sat Jan 01 00:00:00 EST 1"); // Works fine in google chrome // Result: Mon Jan 01 2001 10:30:

    1熱度

    6回答

    是否可以寫這個「單例數組聲明」更短?有不同的腳本增加了一些array,但他們異步加載,所以我不知道哪個將首先初始化array。 var array = array || []; array.push("foo"); console.debug(array[0]); 我想是這樣的,但是,這並不工作: (array || []).push("foo"); 有什麼建議?

    1熱度

    1回答

    我想知道是否有一個良好的回退JavaScript庫在那裏創建不受支持的功能,在新的ECMA規範中定義的功能。我正在使用一個庫,它只使用一些僅支持較新瀏覽器的函數,所以我想填充這些函數,而不必重寫庫。

    3熱度

    2回答

    我經常發現自己需要爲了各種目的在對象上包裝函數。有沒有一種優雅的方式來保留包裝函數上原始函數的length屬性? 例如: var x = { a: function(arg1, arg2) { /* do something */ } }; function wrap(obj) { var original = obj.a; obj.a = function w

    2熱度

    1回答

    我有一個現有的項目(可惜)使用underscore.js而不是ES5墊片來支持IE8和其他非ES5瀏覽器。我習慣於ES5,但通常不使用下劃線。我已閱讀underscore documentation on _.bind並試圖使其正常工作。 下面是使用原生ES5一個工作示例: // Greets people HelloThing = function (greeting) { this

    1熱度

    3回答

    我認爲JavaScript有5種基本類型(null,undefined,boolean,number,string),然後是對象(包含數組,函數和自定義僞類對象)。但是,有些奇怪的是, typeof null 爲"object",並沒有簡單的方法來找回對象類名的僞古典文學課,如Person,Author。我想知道是否有一個更新的操作符或函數可以返回可能的小寫名稱爲原始類型(並且"null"爲n

    3熱度

    5回答

    我認爲這是一個古老的Javascript行爲(克羅克福德說,這是一個設計錯誤),一個函數內部,arguments就像一個數組,但它並不是一個真正的數組,所以數組方法不能它被調用: function foo() { console.log(arguments.slice(1)) } // won't work foo(1,2,3); 我剛剛在最新的Firefox和Chrome上嘗試過它,它在兩

    0熱度

    3回答

    如果有人想爲舊瀏覽器實現一個功能(例如Array.prototype.filter)哪種方法更好?爲什麼?每個人的利弊是什麼? if (!Array.prototype.filter) { Array.prototype.filter = function() { //implementation } } 或 function myFilter(e,i,f) {

    10熱度

    3回答

    我碰到這個項目偶然:https://github.com/termi/ES5-DOM-SHIM它提供了所有的瀏覽器,包括舊的IE幾乎完全ES5支持。我一直在純JS項目中使用它,但現在我有將jquery/mootools/prototype包含在項目中(使用High Charts)。 即使只是包括jQuery腳本導致要在IE8與此墊片一起引發的錯誤。我怎樣才能保持兩全其美? 我的文檔頭看起來是這樣的

    2熱度

    2回答

    把這個簡單的測試對象粘貼到控制檯中,你會看到它說undefined。該對象正在工作,因爲它也打印123,但是什麼是undefined。 測試: var Test = new (function(){ return { get testing(){ return "123"; } } }); console.log(Test.testi