本帖最后由 jacty0219 于 2013-06-18 15:58:47 编辑

解决方案 »

  1.   

    因为js 的函数签名没有返回值这一项,所以可以动态返回很多类型,就看你实际返回什么。
    如果你不加return或者只有return;那么返回时undefined。后续使用这个函数的调用者会使用到你的返回值。
      

  2.   

    嗯。是的。但是有点不太明白return在这里面的必要性。
      

  3.   


    有点似懂非懂的感觉。if中的那个return好像作用不大吧,最后那个return=""好像是你说的这么个意思。。
      

  4.   

    var vars = 1;
    function fns() {
      if(vars == 1) return "username";
      return " ";
    }var b;
    b = fns();
    alert(b)
      

  5.   

    没发现这两个return有什么意义
      

  6.   


    有点似懂非懂的感觉。if中的那个return好像作用不大吧,最后那个return=""好像是你说的这么个意思。。
    这个函数可能会给其他人使用,它们可能单纯需要的是用户名,函数还是要定义的模块化一些,而且功能单一为好。你这个例子其实可以拆分成2个函数比较好,一个获取用户名,一个操作dom。
      

  7.   

    一个return空字符串,一个return用户名,我这样  int id=initCommonHeader() ;
    不就获取到了
      

  8.   

    满足判断条件,则进行操作DOM并返回username,不满足则返回“”
      

  9.   

    把  return 的行注释掉
    看看整个运行正常不
    正常的话你懂的
      

  10.   

    个人觉得在异步里面return没有太多意义,本身都不能同步得到异步里面的结果,所以那个返回没多大用处,即使需要用到异步里面的结果,那么一般使用回调函数就可以解决。
      

  11.   

    这个我试了下,第二个return对运行结果没影响啊。。= =!
      

  12.   

    你这个是有第一个return就可以了吧。最后那个return是在最外层,无任何条件,也就是始终会return空字符串,对么?
      

  13.   

    这个我试了下,第二个return对运行结果没影响啊。。= =!当vars = vars + 1;
    b = fns();
      

  14.   

    返回“”是在最外层,无任何条件。应该是一直会返回空的吧?
    满足判断条件,函数return了,就不会再往下执行了
      

  15.   

    我是看不出来这2个return有毛用,第一个return是return回调函数的,第二个return返回给当前函数一个空字符串
      

  16.   

    我觉得单纯的编译 initCommonHeader(),return删除与否 效果是显示不出来的
    在函数外调用 var username =  initCommonHeader();根据username.length > 0判断是否有获取到数据
    我想这段函数表达就是这个意思吧
      

  17.   

    当前的应用的确是没用用的。这两个return有没有都没有区别
    因为是启动的异步操作,实时的return没有意义
      

  18.   

    这个我试了下,第二个return对运行结果没影响啊。。= =!当vars = vars + 1;
    b = fns();

    没太看懂你的意思= =!
      

  19.   

    返回“”是在最外层,无任何条件。应该是一直会返回空的吧?
    满足判断条件,函数return了,就不会再往下执行了
    第一个return是只影响if里的后续吧,不影响if外的后续操作吧?