J'essaie d'apprendre du javascript en créant un script pour Adobe After Effects CS6. Cependant je suis coincé et ne peux pas comprendre pourquoi. Laissez-moi vous expliquer mon problème.Adobe javascript object non défini après la fonction
à la ligne 156, dans la fonction doMath est l'endroit où mes problèmes commencent. Je n'arrive pas à comprendre pourquoi le copyarray rend la variable de calque indéfinie. ce n'est pas seulement la fonction copyarray qui rend la variable indéfinie. Le getSmallest et le getLargest le font aussi.
Quelques données de mon code que j'ai imprimées (pourraient être utiles).
Layername +Y max="80" target="4" inverted
axis Y
maxValue 80
target 4
positive true
inverted true
http://pastebin.com/tWQs4mf8 < --- mon code
function doMath(layers){
for(i=0;i!=layers.length;i++)
{
if(layers[i].axis=="X")
{
layers[i].convertedData=layers[i].Xdata;
}
else
{
layers[i].convertedData=layers[i].Ydata;
}
alert(layers[i]) //Shows on the alert "Object object"
var copy = copyArray (layers[i].convertedData);
alert(layers[i]); //Shows undefined
var smallest = getSmallest(copy);
var largest = getLargest (copy);
var range = largest-smallest;
$.writeln(smallest + " " + " " + largest + " " + range);
if(layers[i].Positive==null)
{
var temp = getConverted(layers[i].convertedData,smallest,range,layers[i].maxValue,layers[i].inverted);
layers[i].convertedData=temp;
}
}
};
function copyArray(a){
var b = [a.length];
for(i=0;i!=a.length;i++)
{
b[i] = a[i];
}
return b;
}
Depuis que je suis très nouveau pour une raison simple javascript ce qui se passe est très apprécié.
Merci beaucoup! Tu m'as sauvé de pleurer pour dormir! – Shroom