当前位置:首页 > 开发 > Web前端 > JavaScript > 正文

如何理解js中temp = ( function(){ return 'abc' } )()

发表于: 2008-10-17   作者:crabdave   来源:转载   浏览次数:
摘要: 如何理解temp = ( function(){ return 'abc' } )()  其实就是把运行结果返回给前面这个变量。 例如: temp = ( function(){ return 'abc' } )() 其运行结果就是temp='abc', 相当于: function fun() {     return 'abc'; }&n

如何理解temp = ( function(){ return 'abc' } )() 

其实就是把运行结果返回给前面这个变量。

例如: 
temp = ( function(){ return 'abc' } )()
其运行结果就是temp='abc',

相当于:
function fun()
{
    return 'abc';


temp = fun();

alert(temp);

弹出来的结果就是abc。

 

 

第二个括号也可以放置参数,例如:

  var temp=(function(str){alert(str);return str;})('出来!');
  alert(temp);

将会弹出两个“出来!”的结果,其中后面这个括号里的是传入第一个括号里函数的参数,

当然在这个函数中如果没有“return str;”这个语句,变量temp是没有值的。

相当于:

var temp=fun('出来!');
 function fun(str){
  alert(str);
  return str;
 }

 

 

 

(function(){var i=100;alert(i)})()
这种写法就是传说中的匿名函数,它的好处是函数内部定义的对象在函数外面永远无法访问,除此之外这个匿名函数也是不可被其它代码访问的,即使得对象之间不 容易被命名污染(在 js中很多错误是由于对象命名冲突引起的)。按照通常的写法我们会这样写function a(){var i = 100;alert(i)};a();这样写就留下了一个对象a(在不要再用的时候就成了内存垃圾)。

如何理解js中temp = ( function(){ return 'abc' } )()

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
new 操作符 在有上面的基础概念的介绍之后,在加上new操作符,我们就能完成传统面向对象的class + n
http://blog.csdn.net/motian06/article/details/8258942 new 操作符 在有上面的基础概念的介绍之后
最近发现myeclipse10中有几处bug 比如: Cannot return from outside a function or method onClick
最近发现myeclipse10中有几处bug 比如: Cannot return from outside a function or method onClick
<img title="WCF 中的ABC" alt="WCF 中的ABC_第1张图片" src="http://img.it610.com/image/produ
其实js中function自身的属性和方法还是比较多的,比如打开console它会给你一大堆的提示 这里重点只
要点: 1,函数内声明的变量,无论在哪里声明,作用域都是函数内,无论if块,for循环内等等 2,声明
要点: 1,函数内声明的变量,无论在哪里声明,作用域都是函数内,无论if块,for循环内等等 2,声明
要点: 1,函数内声明的变量,无论在哪里声明,作用域都是函数内,无论if块,for循环内等等 2,声明
ABC分类法又称帕雷托分析法,也叫主次因素分析法,是项目管理中常用的一种方法。它是根据事物在技术
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号