javascript中变量和函数的使用
变量
一、什么是变量?
所谓的变量,它其实编程中的一个专业术语。目前就可以理解成一个容器,它里面是用来放东西的。一般来讲它由两部分构成:变量名和变量值。
//我们来创建一个变量var a = 110;
//在这行代码中,,var是声明变量的关键字,a是变量名,110是变量值,=是赋值运算符。
//在声明变量的过程中注意:js中可以一次性声明多个变量:var a = 110,b = 120,c = 130;
//同样js中可以重复声明,var a = 10,var a = 11.var a = 12;
//在实际开发中不要这样使用。
复制代码
二、深入理解变量
1、全局变量与局部变量
全局和局部是指变量的生效范围。类比于普通话与方言。局部变量是声明在函数中的变量,全局变量是声明在函数外面的变量,如下:
<script>function f (){var a= 110,//a就是局部变量,}var b = 111;//b是全局变量
</script>
复制代码
另外注意一点,加var的变量可以做全局变量也可以做局部变量,没有加var的变量只能做全局变量
2、变量的提升
在函数中,带var的变量,都有提升的能力。提升后,会被提升到函数内部的第一行,如下:
3、变量的作用域
在JS变量的作用域只有两种:一种局部作用域,另一种是全局作用域,在JS是没有块级作用域。 全局作用域是指在函数外面的作用域,局部作用域是指函数内部的作用域。
函数
一、什么是函数?
在js中函数是非常重要的概念,数就是一个功能块,给一个输入,通过一个关系,会得到一个输出。它的作用是作为构造器封装一些代码,用于生成对象。 在js中,定义函数有两种方式:函数声明,函数表达式。
//第一种声明一个函数,用关键字function
function f(){
//f是函数名,括号里放函数的形参
alert(“helloworld”};
f();
//调用函数里放实参。
//第二种函数表达式
var f =function (){alert(“hello world”);
}
f ();
复制代码
函数参数分:形式参数(形参)和实际参数(实参)。函数调用的过程就是实参向形参赋值的一个过程。在函数体中,对形参的操作,说白了就是对实参的操作。 另外前面说过,函数就是一个功能块,对于这个功能块,我可以给这个功能块提供原材料,有时候,我们也需要功能块,给我返回一个结果,这个时候就涉及到了函数的返回值。如下
function f() {return 666}console.log(f());
复制代码
在一个函数中,执行到retrun语句时,后面的代码就不再执行了,如下:
二、函数的深入学习
1、函数的传参
(1)基本数据类型的参数传递
`var x = 1;function f (a){a = 2;}f(x);console.log(x);//打印结果为1复制代码
(2)引用数据类型的参数传递
小结:
- 函数的形参可以理解成在函数内部声明的一个局部变量。
- 所有的参数传递,传递都是栈区中的值。
- 对于基本数据类型的参数传递,是真正把数据复制一份传递给了形成。
- 对于引用数据类型的参灵敏传递,传递仅仅是堆区数据的地址。
2、函数返回多个值
//能不能使用一个函数就得到两个数中的最大值,最小值,平均值。
<script>function f(x,y){var arr=[];var max = x>y?x:y;arr[0]=max;var min = x<y?x:y;arr[1]=min;var avg = (x+y)/2;arr[2]=avg;return arr;}f(1,2);console.log(f(1,2));</script>//以输出数组的方法就可以使一个函数返回多个值。
复制代码
3,当函数的参数是另一个函数
这个计算过程的参数传递如下图所示:
转载于:https://juejin.im/post/5ce666086fb9a07ea94448b2
javascript中变量和函数的使用相关推荐
- JavaScript中的工厂函数vs构造函数vs class
原文链接:JavaScript Factory Functions vs Constructor Functions vs Classes 作者:Eric Elliott 译者:sunny 转载需提前 ...
- 理解javascript中的回调函数(callback)【转】
在JavaScrip中,function是内置的类对象,也就是说它是一种类型的对象,可以和其它String.Array.Number.Object类的对象一样用于内置对象的管理.因为function实 ...
- 深入认识javascript中的eval函数
来源:http://wanyij.blog.51cto.com/46570/43794 发现为本文起一个合适的标题还不是那么容易,呵呵,所以在此先说明下本文的两个目的: (1)介绍javascript ...
- JavaScript中变量判断是否是数字,判断是否是整数,判断是否是正整数/负整数,判断奇数/偶数的方法
(1)判断是否是整数 JavaScript中变量判断是否是数字,判断是否是整数,判断是否是正整数/负整数,判断奇数/偶数的方法. (1)判断是否是整数 // 判断整数function isInteg ...
- 在javascript中使用纯函数处理副作用
在javascript中使用纯函数处理副作用 今天给大家带来一片译文, 详情请点击这里.可能在墙内哦 开始了, 如果你点开这篇文章, 就证明你已经开始涉及函数式编程了, 这距离你知道纯函数的概念不会很 ...
- JavaScript中立即执行函数实例详解 转载 作者:李牧羊
javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解.这篇文章 ...
- 理解javascript中的回调函数(callback)
理解javascript中的回调函数(callback) 在JavaScrip中,function是内置的类对象,也就是说它是一种类型的对象,可以和其它String.Array.Number.Obje ...
- javaScript中的匿名函数
js中的匿名函数 js匿名函数 js中匿名函数的N种写法 直接上代码和截图 <!DOCTYPE html> <html> <head> <meta chars ...
- JavaScript常见变量和函数命名示例
JavaScript作为前端开发从业人员必须掌握的3大基础知识中最重要的一环,也是平是接触时间最长.写得最多的.在开发过程中必然会遇到命名的问题,你会词穷.纠结.惆怅吗?本文的出现相信能够解决大部分烦 ...
最新文章
- 2022年人工智能全球最具影响力学者榜单AI 2000
- java一句话木马连接_webshell一句话木马大全
- 字符识别(模板匹配BP神经网络训练)
- 深度学习工具caffe详细安装指南
- WAMP显示错误“MSVCR100.dll”缺少安装时
- js selector设计及实现(一) 实现思路
- DM***+GET***测试
- kali linux查看局域网的电脑,kali linux 如何查找局域网ip
- java swing 跳转窗口_Java建立窗口并通过按钮实现窗口跳转
- ASP.NET报错:failed due to the following error: 8000401a.
- 【外文文献检索与下载方法】
- Modown v7.3无限制版+ Erphpdown12.3插件 + 工单系统
- psd 直接导入unity
- Vue3报错:Extraneous non-props attributes (style) were passed to component but could not be automatical
- 《京东话费充值系统架构演进实践》读后感
- メンアットワーク!3 men at work3 猎人们的青春攻略
- 计算机720p进制,历史频道《人类大历史 Big History》第1季全17集 英语中字 720P高清纪录片...
- 用vb.net制作贪吃蛇游戏
- 开源中国android客户端学习 第一天
- java解析geojson