使用JavaScript中的Variable将值发送到数组中

问题描述 投票:0回答:3
function fun(){
    var a=10;
    var b=20;
    document.getElementById("output1")=a;
    document.getElementById("output2")=b;
  }

这是一个JavaScript函数

var Data = [{label="1", value=output1},{label="2", value=output2}];

我希望在数组Data中使用a和b的值。但我无法访问它。希望很快就能通过这个。

javascript arrays
3个回答
1
投票

在函数外定义ab。调用函数为它们赋值。在Data数组而不是=中使用:为对象中的属性赋值

var a;
var b;
function fun(){
    a=10;
    b=20;
   // document.getElementById("output1")=a;
   // document.getElementById("output2")=b;
  }
fun()

var Data = [{label:"1", value:a},{label:"2", value:b}];
console.log(Data)

0
投票

ab在此上下文中将是函数的本地 - 您必须在函数外部定义它们。还要确保您的对象属性采用key: value格式而不是key = value

var a, b;
function fun() {
  a = 10;
  b = 20;
  document.getElementById("output1").innerText = a;
  document.getElementById("output2").innerText = b;
}

fun();

var Data = [{
  label: "1",
  value: a
}, {
  label: "2",
  value: b
}];

console.log(Data);
<p id="output1"></p>
<p id="output2"></p>

0
投票

而是改变现有的变量范围,

您可以从fun返回值,然后在另一个创建数据的函数中使用它;

function fun(){
	var a=10;
	var b=20;
	//document.getElementById("output1")=a;
	//document.getElementById("output2")=b;
	return [a, b];
}

var ab = fun();
var Data = [{label: "1", value: ab[0]},{label: "2", value: ab[1]}];
console.log(Data)
© www.soinside.com 2019 - 2024. All rights reserved.