HTML 学习笔记 JavaScript (函数)
1.函数的概念
在JS中,可能会定义非常多的相同代码或者功能相似的代码 这些代码可能需要大量重复的使用。这个时候我们就可以使用JS中的函数。
函数是封装了一段可以被重复使用的代码块。目的 就是让大量代码重复使用。
实例
<!DOCTYPE html>
<html>
<head>
<script>
function myFunction()
{
alert("Hello World!");
}
</script>
</head> <body>
<button onclick="myFunction()">点击这里</button>
</body>
</html>
定义了一个button 当button被点击的时候 执行myFunction()函数 提示用户一些信息
2.函数的使用
JavaScript 函数语法
函数就是包裹在花括号中的代码块 前面使用了关键字function:
例如:
function myFunction() {
    这里是要执行的代码块
}
function 声明函数的关键字 全部小写
函数不调用 自己不执行
当函数被调用的时候 会执行函数內的代码块
可以在某件事发生时直接调用函数(比如当用户点击按钮时) 并且可由JavaScript在任何位置调用
JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。
调用带参数的函数
在调用函数时,您可以向其传递值,这些值被称为参数。
这些参数可以在函数中使用。
您可以发送任意多的参数,由逗号 (,) 分隔:
myFunction(argument1,argument2)
当你声明函数的时候 请把参数变作变量来声明
function myFunction(var1,var2)
{
这里是要执行的代码
}
变量和参数必须以一致的顺序出现 第一个变量就是第一个被传递的参数的给定的值 依次类推
如果实参的个数和形参的个数一直 则正常输入结果
如果实参和形参的个数不一致,如果多于形参个数 去形参个数的实参
如果实参的个数小于形参的个数 那就是一个其中的参数存在undefined 如果是数字类型的返回NaN
实例:
<body>
<button onclick="myFunction('tian','CEO')">点我啊</button>
<script> function myFunction(name,job) {
alert("welcome" +name +", the" +job);
} </script>
</body>
带有返回值的函数
有时,我们会希望函数将值返回调用它的地方。
通过使用 return 语句就可以实现。
在使用 return 语句时,函数会停止执行,并返回指定的值。
如果有return 返回的是值 如果没有return会返回undefined
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 的总和。
局部的JavaScript 变量
在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。
您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。
只要函数运行完毕,本地变量就会被删除。
全局 JavaScript 变量
在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。
JavaScript变量的生存期
JavaScript变量的生命期从他们被声明的时间开始
局部变量会在函数运行以后被删除
全局变量会在页面被关闭后被删除。
向未声明的JavaScript 变量来分配值。
如果 你把值分配给尚未声明的变量 该变量将自动作为全局变量声明
carname="Volvo";
将声明一个全局变量carname 就算是他在函数內执行。
arguments 的使用
当我们不确定有多少个参数传递的时候,可以使用arguments来获取。在js中 arguments实际上是当前函数的一个内置对象 所有函数都内置了一个
arguments对象。arguments对象存储了传递的所有实参。
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
//arguments展示形式是一个伪数组 因此可以进行遍历 伪数组具有以下特点
//具有length属性 可以按照索引访问存储 不能使用push pop等方法
function fn() {
console.log(arguments);//里面存储了传递的所有实参
}
fn(1, 2, 3);
</script>
</head>
函数可以调用另一个函数
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
function fn1() {
console.log(11);
} function fn2() {
fn1()
}
</script>
</head>
函数的第二种声明方式
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
//第二种声明方式 匿名函数
var fun = function () {
console.log('我是函数表达式');
}
fun();
//fun 是变量名 不是函数名
//函数表达式方式声明方式跟变量神明方式差不多 只不过变量里面存的是值
//而函数表达式里面存的是函数。
//也可以传递参数
var fun1 = function (name) {
console.log(name);
}
fun1();
</script>
</head>
HTML 学习笔记 JavaScript (函数)的更多相关文章
- Matlab学习笔记 figure函数
		
Matlab学习笔记 figure函数 matlab中的 figure 命令,能够创建一个用来显示图形输出的一个窗口对象.每一个这样的窗口都有一些属性,例如窗口的尺寸.位置,等等.下面一一介绍它们. ...
 - matlab学习笔记 bsxfun函数
		
matlab学习笔记 bsxfun函数 最近总是遇到 bsxfun这个函数,前几次因为无关紧要只是大概看了一下函数体去对比结果,今天再一次遇见了这个函数,想想还是有必要掌握的,遂查了些资料总结如下. ...
 - 学习笔记---Javascript事件Event、IE浏览器下的拖拽效果
		
学习笔记---Javascript事件Event.IE浏览器下的拖拽效果 1. 关于event常用属性有returnValue(是否允许事件处理继续进行, false为停止继续操作).srcE ...
 - matlab学习笔记13_1 函数返回值
		
一起来学matlab-matlab学习笔记13函数 13_1 函数返回值 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 https://blog.csdn.net/qq_36556 ...
 - [JS学习笔记]Javascript事件阶段:捕获、目标、冒泡
		
当你在浏览器上点击一个按钮时,点击的事件不仅仅发生在按钮上,同时点击的还有这个按钮的容器元素,甚至也点击了整个页面. 事件流 事件流描述了从页面接收事件的顺序,但在浏览器发展到第四代时,浏览器开发团队 ...
 - swift学习笔记2——函数、闭包
		
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
 - HTML 学习笔记 JavaScript(面向对象)
		
现在让我们继续跟着大神的脚步前进 学习一下JavaScript中的面向对象的思想,其实作为一个iOS开发者,对面向对象还是比较熟悉的,但是昨晚看了一下Js中的面向对象,妈蛋 一脸萌比啊.还好有大神.让 ...
 - haskell学习笔记_函数
		
一开始学习函数式编程语言就被告知函数式编程语言是一种“定义式”的语言,而不是一种命令式的语言,在学习haskell的函数语法时,此感觉更加强烈,haskell的函数定义倾向于一种类似C++里面的swi ...
 - Python学习笔记之函数
		
这篇文章介绍有关 Python 函数中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中函数的使用技巧 1.函数文档 给函数添加注释,可以在 def 语句后面添加独立字符串,这样的注释被 ...
 
随机推荐
- AS下NDK开发(一)
			
捣鼓了一天的NDK,总结下. Eclipse下开发ndk好像挺麻烦的样子,看书上要下载Cygwin,eclipse还要下载插件CDT..而在AS上就方便多啦.下载android ndk.安装,配置环境 ...
 - 操作系统开发系列—12.d.扩充内核 ●
			
现在把esp.GDT等内容放进内核中,我们现在可以用C语言了,只要能用C,我们就避免用汇编. 下面看切换堆栈和GDT的关键代码: ; 导入函数 extern cstart ; 导入全局变量 exter ...
 - Ubuntu16.04 LTS 下安装 Android Studio 2.2.2 步骤
			
下载 Android SDK,官网:www.android.com 我相信很多人跟我一样,进不去.Android Studio 中文官网 www.android-studio.org 进去下载, 在终 ...
 - 代码创建storyboard
			
代码创建storyboard方式如下 // 加载storyboard UIStoryboard *storyboard = [UIStoryboard StoryboardWithName:@&quo ...
 - android中实现跑马灯效果以及AutoCompleteTestView与MultiAutoCompleteTextView的学习
			
跑马灯效果 1.用过属性的方式实现跑马灯效果 属性: android:singleLine="true" 这个属性是设置TextView文本中文字 ...
 - iOS开发-生成随机数
			
有时候我们需要在程序中生成随机数,但是在Objective-c中并没有提供相应的函数,好在C中提供了rand().srand().random().arc4random()几个函数.那么怎么使用呢?下 ...
 - android support的作用及其常见错误的解决
			
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
 - CodeForce  Round#49  untitled   (Hdu 5339)
			
Untitled Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Su ...
 - 1、开篇:PMO定义 - PMO项目管理办公室
			
PMO,Project Management Office,项目管理办公室,笔者不按照项目管理知识体系指南PMBOK(Project Management Body Of Knowledge)上的定义 ...
 - android ProGuard 代码混淆实现
			
1 修改project.properties,添加ProGuard配置项 proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt: ...