Tutorial :How to set result of function as global variable



Question:

I'm sure this is really simple and I'm drawing a giant blank, but how do you set the result of a function as a global variable?

Example, I want to set the first "color" in array "colors" as global variable "color" (I know the example doesn't make much practical sense, but it's just to illustrate my question):

var color = "";    function selectColor () {      var colors = ["blue","red","green","yellow"];      var color = colors[0];      return color;  }    window.onload = function () {      selectColor ();      alert(color);  }  


Solution:1

It should work for you if you remove the var declaration from color in the selectColor() function, like this:

var color = "";    function selectColor () {      var colors = ["blue","red","green","yellow"];      color = colors[0];      return color;  }    window.onload = function () {      selectColor ();      alert(color);  }  


Solution:2

var color = "";    function selectColor() {      var colors = ["blue","red","green","yellow"];      var color = colors[0];      return color;  }    window.onload = function() {      color = selectColor();      alert(color);  }  


Solution:3

Answering to your question:

var color = "";    function selectColor () {      var colors = ["blue","red","green","yellow"];      color = colors[0];  }    window.onload = function () {      selectColor ();      alert(color);  }  
  • The var keyword creates a local variable inside selectColor(); you don't want that.
  • The return statement is not necessary; you don't capture it.

In any case, in this exact example it'd be cleaner to do this:

var color = "";    function selectColor () {      var colors = ["blue","red","green","yellow"];      return colors[0];  }    window.onload = function () {      color = selectColor ();      alert(color);  }  

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »