gpt4 book ai didi

javascript - 如何从 Javascript 函数返回两个变量作为属性

转载 作者:行者123 更新时间:2023-11-29 16:30:01 31 4
gpt4 key购买 nike

不确定在 Dojo 或 JS 中函数是否可以返回具有两个 vars 属性的对象?我的代码不起作用,但正如我的要求:

function getObj()
{
var var1 = 123; // 123 as simple case, but it could be a DOM node
var var2 = 345; // another DOM node
return {v1: var1, v2: var2}; // any way to get two values back?
}
....
var obj = getObj();
console.log("obj.v1: " + obj.v1 + "; obj.v2: " + obj.v2); // not working but possible?

好的,这是我真正的功能:

 dojo.requre("dojo.html");
....
function getNodes()
{
var node = dojo.byId("div1"); // static <div> in html
var childen = "<div id='chart' style='width: 10px; height: 10px'></div><div id='legend'></div>";
dojo.html.set(node, children); // add two divs as children
var nodeChart = dojo.byId("chart");
var nodeLegent = dojo.byId("legend");
return {chart: nodeChart, legend: nodeLegend};
}
...
var nodes = getNodes();
var nodeChart = nodes.chart; // OK div#chart
var nodeLegend = nodes.legend; // nodes.legend is div#legend, but nodeLegend is undefined!

最佳答案

是的,这是可能的。我刚刚尝试了你的代码,它工作正常......

<html>
<head>
<script>
function getObj(){
var var1 = 123; // 123 as simple case, but it could be a DOM node
var var2 = 345; // another DOM node
return {v1: var1, v2: var2}; // any way to get two values back?
}

var obj = getObj();
alert(obj.v1);
</script>
</head>
<body>
<h1>Test</h1>
</body>
</html>

编辑:

你有一个错字...

 var nodeLegent = dojo.byId("legend");
return {chart: nodeChart, legend: nodeLegend};

您的变量名为nodeLegent,但您正在传递nodeLegend(未定义)

不要感到难过;每个人都会犯这样的错误。只是需要另一双眼睛。

关于javascript - 如何从 Javascript 函数返回两个变量作为属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/687764/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com