<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <p>局部变量计数。</p> <button type="button" onclick="myFunction()">计数!</button> <p id="demo">0</p> <script> var add = (function () { var counter = 0; return function () {return counter += 1;} })(); function myFunction(){ document.getElementById("demo").innerHTML = add(); } </script> </body> </html> 闭包()所调用的事哪个函数? 为什么可以不用函数名就知道哪个函数
时间: 2023-11-03 16:05:43 浏览: 48
闭包所调用的是匿名函数。
在这段代码中,定义了一个匿名函数并将其赋值给变量 add。这个匿名函数返回了一个内部函数,而这个内部函数就是闭包。由于闭包捕获了外部函数的变量 counter,并返回了一个匿名函数,所以在调用 add() 时,实际上是调用了闭包,从而实现了计数器的功能。因此,我们不需要知道函数名就可以通过变量 add 来调用这个函数。
相关问题
<!DOCTYPE html> ↵ ↵<html> ↵<head> ↵ <meta charset="utf-8" /> ↵ <meta name="viewport" content="widt
<!DOCTYPE html>是HTML文档类型声明,它告诉浏览器正在使用哪个HTML版本来解析文档。在HTML5中,<!DOCTYPE html>是唯一的文档类型声明,它告诉浏览器使用HTML5规范来解析文档。在HTML文档中,<!DOCTYPE html>应该作为第一行。
下面是一个简单的HTML文档示例,其中包含了<!DOCTYPE html>声明:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>My HTML Document</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is my first HTML document.</p>
</body>
</html>
```
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> 绿叶学习网; </body> </html>哪里错了
根据你提供的代码,我发现以下几个问题:
1. 缺少`<!DOCTYPE html>`声明,这个声明告诉浏览器使用哪个HTML版本来解析页面。
2. 缺少`<title>`标签,这个标签用于定义网页的标题,显示在浏览器的标题栏或标签页上。
3. 缺少`<body>`标签内的内容,这个标签用于定义网页的主体内容,可以在其中添加文本、图片、链接等元素。
修正后的代码如下所示:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>绿叶学习网</title>
</head>
<body>
绿叶学习网
</body>
</html>
```