猿问

请教一下。。。函数没有输出

function showColor(){
  var color = "red";
  function myColor(){
    var myColor = "bule";
      function changeColor(){
        var changeColor = myColor;
        myColor = color;
        color = changeColor;
        alert(color);
        }
      }
    }

检查了好久,这个函数为什么没有输出呢

慕数据4485210
浏览 2012回答 4
4回答

h5

function showColor(){   var color = "red";   function myColor(){     var myColor = "bule";     function changeColor(){       var changeColor = myColor;       myColor = color;       color = changeColor;       alert(color);      }     changeColor()    }   myColor() } showColor()

ruibin

这个函数完全正确啊,这就是一个闭包而已,没有输出的原因是你没有调用,在每个函数后面调用一次就ok了。

Halo_

这函数体里面也只是定义函数,并没有调用啊。调这个吧exchangeColor('red' , 'blue');function exchangeColor(c1,c2){    var temp = c1;    c1=c2;    c2 = temp;}

NodeOS

1、蓝色的英文“blue”拼写错误;2、其实你这段代码的本意应该是交换颜色吧?声明一个变量没必要建个函数,函数嵌套的引用也不能这样,其实你的代码完全可以简化成以下部分从而实现交换颜色的功能:    var color = "red";     var myColor = "blue";     function changeColor()     {         var changeColor = myColor;         myColor = color;         color = changeColor;         alert(color);     }
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答