当前位置:  开发笔记 > 编程语言 > 正文

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

如何解决《如何从Javascript函数返回两个变量作为属性》经验,为你挑选了1个好方法。

不确定在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 
in html var childen = "
"; 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!

Josh Stodola.. 6

是的,这是可能的.我只是尝试了你的代码,它工作得很好......


  
    
  
  
    

Test

编辑:

你有一个错字......

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

您的var名为nodeLegent,但您传递的是nodeLegend(未定义)

不要心疼; 每个人都犯这样的错误.只需要另一双眼睛.



1> Josh Stodola..:

是的,这是可能的.我只是尝试了你的代码,它工作得很好......


  
    
  
  
    

Test

编辑:

你有一个错字......

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

您的var名为nodeLegent,但您传递的是nodeLegend(未定义)

不要心疼; 每个人都犯这样的错误.只需要另一双眼睛.

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有