我在JS中有一个简单的代码,当我点击按钮1时,我在控制台日志中看到2个变量varData1和varData2。我想添加第三个变量varData3。当我点击Button2时,我希望第三个值将在数组中,但我什么都没看到。我怎么能这样做?
var parParams = [];
$('#button1').click(function() {
parParams = {
varData1 : "eight",
varData2 : 7,
};
console.log(parParams["varData1"]);
console.log(parParams["varData2"]);
console.log(parParams["varData3"]);
}
$('#button2').click(function() {
parParams['varData3']= 77;
}
答案 0 :(得分:6)
您必须在设置之后查看值,当前您在单击按钮1而不是按钮2时正在查看它。
请注意,按钮2会向现有对象添加值,而按钮1会使用新对象覆盖现有数组。 (因此,如果单击按钮2,然后单击按钮1,则在尝试查看之前,将覆盖包含varData3
值的对象。)
听起来你真的想要更像这样的东西:
var parParams = {}; // Object, not array
$('#button1').click(function() {
// Modify object, don't overwrite it.
parParams.varData1 = "eight";
parParams.varData2 = 7;
examineObject();
}
$('#button2').click(function() {
parParams['varData3'] = 77;
examineObject(); // Look at it here, not just when the other button is clicked
}
function examineObject() {
console.log(parParams);
}