2011-05-16 24 views
8

哪些瀏覽器不支持對象原型的get和set方法?我相信這是ES5的一個特性,我知道它適用於Chrome,但我想知道是否可以安全地使用ajax應用程序。這裏有一個例子:Javascript在瀏覽器中獲取並設置可用性

var foo = function() {}; 
foo.prototype = { 
    get name() { 
     return this._name; 
    }, 
    set name (n) { 
     this._name = n || "bar"; 
    } 
}; 

回答

9

這是您的兼容性表格。

http://kangax.github.com/es5-compat-table/

Getter in property initializerSetter in property initializer行。

根據該表:

  • 火狐4
  • Safari 5的
  • 鉻7-11

其他瀏覽器(包括IE9)沒有給出一個YesNo,所以也許他們沒有經過測試。我很確定IE9支持它。

+2

對不起,沒時間測試其他的:) – kangax 2011-05-16 06:27:06

+1

「不支持(特別是在IE6-8中)意味着腳本會觸發語法錯誤。」 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get – Justin 2015-05-27 23:03:18