欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2023-12-25 20:14:21
...

如何理解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(在不要再用的时候就成了内存垃圾)。

相关标签: 框架

上一篇:

下一篇: