问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么js理解函数实例

发布网友 发布时间:2022-04-24 09:05

我来回答

2个回答

热心网友 时间:2022-04-20 09:19

js的函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。如下为其按键驱动时间的一个简单示例
<!DOCTYPE html>
<html>
<head>
<script>
function myFunction()
{
alert("Hello World!");
}
</script>
</head>
<body>
<button onclick="myFunction()">点击这里</button>
</body>
</html>

1、JavaScript 函数语法
函数就是包裹在花括号中的代码块,前面使用了关键词 function:
function functionname()
{
这里是要执行的代码
}

当调用该函数时,会执行函数内的代码。
可以在某事件发生时直接调用函数(比如当用户点击按钮时),并且可由 JavaScript 在任何位置进行调用。
提示:JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。

2、调用带参数的函数
在调用函数时,您可以向其传递值,这些值被称为参数。
这些参数可以在函数中使用。
您可以发送任意多的参数,由逗号 (,) 分隔:
myFunction(argument1,argument2)
当您声明函数时,请把参数作为变量来声明:
function myFunction(var1,var2)
{
这里是要执行的代码
}

变量和参数必须以一致的顺序出现。第一个变量就是第一个被传递的参数的给定的值,以此类推。
实例
<button onclick="myFunction('Bill Gates','CEO')">点击这里</button>
<script>
function myFunction(name,job)
{
alert("Welcome " + name + ", the " + job);
}
</script>

上面的函数会当按钮被点击时提示 "Welcome Bill Gates, the CEO"。
函数很灵活,您可以使用不同的参数来调用该函数,这样就会给出不同的消息:
实例
<button onclick="myFunction('Harry Potter','Wizard')">点击这里</button>
<button onclick="myFunction('Bob','Builder')">点击这里</button>
根据您点击的不同的按钮,上面的例子会提示 "Welcome Harry Potter, the Wizard" 或 "Welcome Bob, the Builder"。

3、带有返回值的函数
有时,我们会希望函数将值返回调用它的地方。
通过使用 return 语句就可以实现。
在使用 return 语句时,函数会停止执行,并返回指定的值。
语法
function myFunction()
{
var x=5;
return x;
}

上面的函数会返回值 5。
注释:整个 JavaScript 并不会停止执行,仅仅是函数。JavaScript 将继续执行代码,从调用函数的地方。
函数调用将被返回值取代:
var myVar=myFunction();
myVar 变量的值是 5,也就是函数 "myFunction()" 所返回的值。
即使不把它保存为变量,您也可以使用返回值:
document.getElementById("demo").innerHTML=myFunction();
"demo" 元素的 innerHTML 将成为 5,也就是函数 "myFunction()" 所返回的值。
您可以使返回值基于传递到函数中的参数:
实例
计算两个数字的乘积,并返回结果:
function myFunction(a,b)
{
return a*b;
}
document.getElementById("demo").innerHTML=myFunction(4,3);

"demo" 元素的 innerHTML 将是:
12

在您仅仅希望退出函数时 ,也可使用 return 语句。返回值是可选的:
function myFunction(a,b)
{
if (a>b)
{
return;
}
x=a+b
}

如果 a 大于 b,则上面的代码将退出函数,并不会计算 a 和 b 的总和。

6、局部 JavaScript 变量
在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。
您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。
只要函数运行完毕,本地变量就会被删除。

7、全局 JavaScript 变量
在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。

8、JavaScript 变量的生存期
JavaScript 变量的生命期从它们被声明的时间开始。
局部变量会在函数运行以后被删除。
全局变量会在页面关闭后被删除。

9、向未声明的 JavaScript 变量来分配值
如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。
这条语句:
carname="Volvo";
将声明一个全局变量 carname,即使它在函数内执行。

热心网友 时间:2022-04-20 10:37

首先我们了解一下对于引用类型变量虚拟机的处理方式:
对于引用类型的变量,虚拟机为其分配内存空间,但在内存空间中存放的并不是变量所引用的对象,而是对象在堆区存放的地址,所以引用变量只是指向被引用那个的对象,而不是存储了被引用的对象,因而两个引用变量之间的赋值,实际上九是将一个引用变量存储的地址复制给另一个引用变量,从而使连个变量指向同一个对象。
好的,我们首先分析第二个例子,为什么其返回的结果为true

function b(){} 定义了一个函数(也可以理解为一个引用变量);虚拟机为其分配内存空间,内存空间存储地址加入为“a”;

function a(){return b} 这个就想引用变量b把地址复制给了a,让a、b指向的内存地址一样;
a1=a();
a2=a();
两个赋值,结果自然为true

再看第一个
function a(){return function b(){}}
a1=a();
a2=a();
当赋值的同时 return function b(){} 返回的数据类型一样,但虚拟机为其分配连个地址,指向不同,所以结果为false;
你可以用typeof()方法测试一下a1、a2以及b function b()的数据类型 你会发现他们的类型都是function,a1/a2的值都是function b(){}但唯一的区别就是内存地址不一样,引用类型指向不一样,结果就不一样。

这些概念的东西,有时候也挺烦人的,但也要慢慢学习,消化这些实际存储模式。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
武汉大学在职研究生考试科目有哪些 报考武汉大学在职研究生录取率高吗? 武汉大学mpa在职研究生好考吗 忘记车子买哪家保险 怎么查 67年的羊和什么生肖最配夫妻 67年的羊和69年鸡相配吗? 67年羊男与69年鸡女同是11月出生婚配如何? 67年9月和69年十月的结婚 “新菊亦侵篱”的出处是哪里 “闲绕篱头看菊花”的出处是哪里 js中函数到底怎么存储的? JS函数的参数如何设置 js函数的几种写法 闭包概要 js函数定义方式的区别 javascript 中函数 function什么作用 JS里声明函数有几种方式? JS函数是什么? 推荐几篇好的歌特文章 js函数有哪些特点 梦见龙和九子 虎跑泉何以得名? 庞培《蔷薇》现代诗鉴赏 龙有哪9似? 关于夏天的现代诗歌 给我介绍些歌曲,它的歌词很美, 我从小到大都做一个梦。我在房子里,门是关着的。然后外面突然起风了_百度... 我是村委会成员,梦见村委会门关闭门环用绳子捆绑着用竹子拉着 梦见门环不完整反扣不住最后拿石头挡往在家门缝看到几位美女头戴花代跑过去听说是死人下葬我叫他们不要站 梦见门环不完整反扣不住最后拿石头挡往门是半开着看见几位漂亮姑娘带着花带我想看可是跑到门口听说是死人 有什么快速塑形的方法吗? js 函数如何去调用另一个函数中的函数? 关于js函数声明和调用函数的问题 JS 函数问题? JS执行函数 js中函数具体指什么 javascript函数传参问题 如何分辨aj5真假 关于js函数的写法 fun = function(){} fun:{}有什么不同,高手回答_百 ... aj5怎么辨别真假 aj5怎样辨真伪 AJ5怎么看真假 怎么辨别aj5真假 怎样区分aj5真假 新人求助如何看AJ鞋真假尤其AJ5 如何鉴别aj5的真假?还有就是如果鞋子的鞋底和鞋跟有一些小瑕疵是不是正常的? 真假AJ5鸳鸯怎么区别 aj5奥利奥怎么看真假 教你一招,如何分辨AJ5黑蝉翼的真假 怎么分辨aj5 aj5鞋子鞋标求辨真假,为什么