我在 Float32Array 中添加了 3 个名为“x”、“y”和“z”的属性。getter 在 chrome 和 firefox 中都可以正常工作,但似乎 setter 只能在 chrome 中工作。这是为什么?它是一个错误吗?有没有办法让它在Firefox中工作?
Object.defineProperty(Float32Array.prototype, 'x', {
get: function(){
return this[0];
},
set: function(x){
this[0] = x;
}
});
// creating a Float32Array-Vector using mjs.js
var vector = V3.$(1,2,3);
// works fine
document.writeln(vector.x);
// works in chrome but not in firefox
vector.x = vector.y + vector.z;