js篮球世界杯赌球 立即调用的函数表达式如何写
如果不需要显示调用函数, 让这个函数在定义的时候就执行的话, 该如何写才可以呢,接下来将详细介绍实现步骤,感兴趣的朋友可以了解下
1.前言
函数需要先定义,后使用。 这基本上所有编程语言的一条铁的定律。
一般状况下, 我们需要调用一个JavaScript 函数, 基本的状况都是先定义,
然后再调用。 看一个例子
1.前言
函数需要先定义,后使用。 这基本上所有编程语言的一条铁的定律。
一般状况下, 我们需要调用一个JavaScript 函数, 基本的状况都是先定义,
然后再调用。 看一个例子
代码如下:
复制代码 代码如下:
复制代码 代码如下:
<!--by oscar999 2013-1-16-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<title>Say Hello</title>
</head>
<body>
<script>
//define function
function sayHello()
{
alert("hello");
}
//call function
sayHello();
</script>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<title>Say Hello</title>
</head>
<body>
<script>
//define function
篮球世界杯赌球,function sayHello()
{
alert("hello");
}
//call function
sayHello();
</script>
</body>
</html>
但是如果不需要显示调用函数, 让这个函数在定义的时候就执行的话,
该如何写才可以呢?
2.思考的历程
从以上的例子来看,聪明的你结合以上的使用状况可能会想:
===》既然调用的时候是在函数名后面加上一对 是否在function
定义的后面加上一对大括号是否就可以执行了呢? 像以下这样:
但是如果不需要显示调用函数, 让这个函数在定义的时候就执行的话, 该如何写才可以呢?
复制代码 代码如下:
2.思考的历程
从以上的例子来看,聪明的你结合以上的使用状况可能会想:
===》既然调用的时候是在函数名后面加上一对 是否在function
定义的后面加上一对大括号是否就可以执行了呢? 像以下这样:
代码如下:
function sayHello()
{
alert("hello");
}();
复制代码 代码如下:
不幸的是,以上的写法会报出js 的语法错误。
因为Javascript
的解析器在解析器解析全局的function或者function内部function关键字的时候,
默认会把大括号解析成function声明,而不是function表达式。
function sayHello()
{
alert("hello");
}();
也就是说, 会把最后的一对大括号默认解析成一个缺少名字的function,并且抛出一个语法错误信息,因为function声明需要一个名字。
不幸的是,以上的写法会报出js 的语法错误。
因为Javascript
的解析器在解析器解析全局的function或者function内部function关键字的时候,
默认会把大括号解析成function声明,而不是function表达式。
===》 你可能又会想, 如果我在大括号中传入参数是否就会解析成表达式了呢?
也就是说, 会把最后的一对大括号默认解析成一个缺少名字的function,并且抛出一个语法错误信息,因为function声明需要一个名字。
复制代码 代码如下:
===》 你可能又会想,
如果我在大括号中传入参数是否就会解析成表达式了呢?
代码如下:
function sayHello()
{
alert("hello");
}(1);
复制代码 代码如下:
的确, 错误是没有了。 但是以上的写法等同于以下写法的效果
function sayHello()
{
alert("hello");
}(1);
复制代码 代码如下: