使用 JMP 15.2.1。
我想我一定是对变量在 JSL 中的工作方式有误解。我已经遇到过几次这个问题,最后想了解我做错了什么。
我有一个函数,我在其中进行一些计算,将结果存储在变量中,然后尝试将结果插入到列表中。 我知道变量包含我希望它们包含的值,但是当我尝试将它们添加到列表中时,它会将变量名称而不是变量的值添加到列表中。 因为这些是局部定义的变量,所以这会导致该函数范围之外的错误。
我已经尝试在我能想到的任何地方使用 Eval/Eval List,但这也不起作用。
如何使返回的列表包含变量中的值。
提前致谢!
list = {{3,4}, {1,5}, {3,2}};
deltaX = 1;
deltaY = 2;
updateList = Function({cl, dx, dy},
{newX, newY},
newX = cl[1][1] + dx;
newY = cl[1][2] + dy;
show(newX);
Insert Into(cl, {{newX, newY}}, 1);
show(cl);
return(cl);
);
list2 = updateList(list, deltaX, deltaY);
show(list2);
//this errors because list2[1][1] contains newX instead of the value 4
//list2[1][1] + 1;