所以我有一个名为"options"的对象,其中包含以下内容:
var options = {
assignments: ['involved', 'assignee', 'candidate'],
assignment: ""
}
Run Code Online (Sandbox Code Playgroud)
使用for循环,我试图将我的数组赋值中的值逐个放入赋值var中.然后我使用"选项"将新值作为我在循环中调用的另一个函数的参数.
for (var i = 0; i < options.data.assignments.length; i++) {
options.data.assignment = options.data.assignments[i];
console.log("value of i : ",i);
console.log("value of options :",options);
otherFunction(options);
}
Run Code Online (Sandbox Code Playgroud)
我期待看到这样的结果:
i的值:0
期权价值:{assignment ="涉及"......}
i的值:1
期权价值:{assignment ="受让人"......}
i的值:2
期权价值:{assignment ="candidate"...}
但相反,我有这样的事情:
i的值:0
期权价值:{assignment ="candidate"...}
i的值:1
期权价值:{assignment ="candidate"...}
i的值:2
期权价值:{assignment ="candidate"...}
事情是这样做,我的赋值变量总是设置为"候选",我的数组末尾的值.
奇怪的是,当我尝试时console.log(options.data.assignments[i]),正确的值出现了.对于"i"来说,它从0到1再到2然后正确停止.所以我的循环工作得非常好,除非我想设置变量的值.
有什么想法这里的问题是什么?
谢谢