Pomoc pśepytaś

Glědajśo se wobšudy pomocy. Njenapominajomy was nigda, telefonowy numer zawołaś, SMS pósłaś abo wósobinske informacije pśeraźiś. Pšosym dajśo suspektnu aktiwitu z pomocu nastajenja „Znjewužywanje k wěsći daś“ k wěsći.

Dalšne informacije

JavaScript problem - properties assigned by setters are always undefined

  • 2 wótegronje
  • 2 matej toś ten problem
  • 1 naglěd
  • Slědne wótegrono wót jfd34

more options

Consider this JavaScript code:

function foo(x) {
    var obj = { 
        set a(val) { document.write('Setting obj.a to ' + val + '\r\n'); }
    };
   
    obj.a = x;
    return obj.a + 2;
}
var n = foo(3);

The value of n will be NaN instead of the expected 5.

Is this a bug in Firefox or there is something wrong with the JavaScript code itself?

Consider this JavaScript code: function foo(x) { var obj = { set a(val) { document.write('Setting obj.a to ' + val + '\r\n'); } }; obj.a = x; return obj.a + 2; } var n = foo(3); The value of n will be NaN instead of the expected 5. Is this a bug in Firefox or there is something wrong with the JavaScript code itself?

Wót jfd34 změnjony

Wšykne wótegrona (2)

more options

This at least works.

function foo(x) {
var obj = { set aValue(val){ this.a=val; } };
obj.a = x;
return (obj.a + 2);
}
var n = foo(3);
alert(n);
more options

It is obvious why the code given by cor-el will work. The setter function is not called at all. It is similar to this:

function foo(x) {
    var obj = {};
    obj.a = x;
    return (obj.a + 2);
}
var n = foo(3);
alert(n);

I want something which sets a property of an object using a setter function, and then retreives the value of that property.