javascript - Point to an object's property in a timeout -
i have simple object this:
myobject.percentage = 2; bar = document.getelementbyid('the_div');
so have this:
function upgrade_bar(bar,percentage) { console.log(percentage); bar._timer = settimeout(function () { upgrade_bar(bar,percentage) }, 10000); } upgrade_bar(bar,myobject.percentage); myobject.percentage = 4; //upgrade_bar still console.logs 2 instead of 4
so whilst running, else percentage
changing.
but inside upgrade_bar
function still 2
started as.
i'm wondering if there way use pointer not pass value pass reference date?
javascript doesn't have pass-by-reference arguments.
what can pass object , reference property. and, regarding comments different properties, can add argument know use.
function upgrade_bar(bar, settings, key) { key = key || 'percentage'; console.log(settings[key]); bar._timer = settimeout(function () { upgrade_bar(bar, settings, key); }, 10000); } upgrade_bar(bar, myobject, 'percentage');
Comments
Post a Comment