Javascript基础知识盲点总结之函数


Posted in Javascript onMay 15, 2016

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。本文重点给大家介绍js基础知识盲点总结之函数。

一、函数中的arguments对象

每个函数内部都有一个arguments,它能返回函数所接受的所有参数

注意:argumens接收的是实参

如下是利一个利用arguments特性编写的求和函数:

function sumOnSteroids(){ 
var I, res = 0; 
var number_of_params = arguments.length; 
for(I = 0; I < number_of_params; i++){ 
res += arguments[i]; 
} 
return res; 
}

二、关于变量的作用域

在javascript中,不能为变量定义特定的块级作用域,但是可以定义其所属的函数域。

javascript中的全局变量指的是声明在所有函数之外的变量

在一个函数内部定义的局部变量,在函数外部是不存在的

如果在函数内部声明一个变量时没有使用var语句,该变量就会被默认为全局变量(即便在函数中定义外部也可以访问)。这种变量会在函数被调用之前不存在,调用函数后会首次被创建并赋予全局作用域

三、自调函数

自调函数是可以在定义后自行调用的函数,基本结构如下:

{ 
function(name){ 
alert(‘Hello' + name + ‘!'); 
} 
}(‘Martin')

后面的()可以进行参数传递,其内声明的值会自动传递到function的参数中

使用如上这种自调匿名函数不会产生任何的全局变量

四、可自行重写的函数

这种函数的特点是可以在执行之后自己进行函数重写,下面是一个例子:

function a(){ 
alert(“A”); 
a = function(){ 
alert(“B”) 
}; 
}

第一次调用a()时,执行alert(“A”);第二次调用a()时,执行alert(“B”)。因为在第一次执行该函数时,其将全局变量a重新定义了

以上所述是小编给大家介绍的Javascript基础知识盲点总结之函数的相关知识,希望对大家以上帮助!

Javascript 相关文章推荐
JavaScript面向对象设计二 构造函数模式
Dec 20 Javascript
JQuery 常用方法和事件详细介绍
Apr 18 Javascript
javascript事件处理模型实例说明
May 31 Javascript
JavaScript数组方法大全(推荐)
Jul 05 Javascript
微信小程序滚动Tab实现左右可滑动切换
Aug 17 Javascript
vue获取当前点击的元素并传值的实例
Mar 09 Javascript
vue项目中应用ueditor自定义上传按钮功能
Apr 27 Javascript
bootstrap 弹出框modal添加垂直方向滚轴效果
Jul 09 Javascript
详解如何在Angular优雅编写HTTP请求
Dec 05 Javascript
VUE简单的定时器实时刷新的实现方法
Jan 20 Javascript
countUp.js实现数字滚动效果
Oct 18 Javascript
Vue2项目中对百度地图的封装使用详解
Jun 16 Vue.js
深入理解$.each和$(selector).each
May 15 #Javascript
js中最容易被忽视的事件问题大总结
May 15 #Javascript
jquery点击改变class并toggle的实现代码
May 15 #Javascript
js停止冒泡和阻止浏览器默认行为的简单方法
May 15 #Javascript
浅析js绑定事件的常用方法
May 15 #Javascript
js添加事件的通用方法推荐
May 15 #Javascript
js阻止默认浏览器行为与冒泡行为的实现代码
May 15 #Javascript
You might like
php你的验证码安全码?
2007/01/02 PHP
PHP图片验证码制作实现分享(全)
2012/05/10 PHP
深入PHP与浏览器缓存的分析
2013/06/03 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
PHP判断IP并转跳到相应城市分站的方法
2015/03/25 PHP
php cookie工作原理与实例详解
2016/07/18 PHP
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
基于jquery编写的横向自适应幻灯片切换特效的实例代码
2013/08/06 Javascript
使用angular写一个hello world
2015/01/23 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
Angular2安装angular-cli
2017/05/21 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
Vue2.0 多 Tab切换组件的封装实例
2017/07/28 Javascript
react实现菜单权限控制的方法
2017/12/11 Javascript
mpvue+vant app搭建微信小程序的方法步骤
2019/02/11 Javascript
Vue的属性、方法、生命周期实例代码详解
2019/09/17 Javascript
[53:03]Optic vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
K-近邻算法的python实现代码分享
2017/12/09 Python
详谈python3 numpy-loadtxt的编码问题
2018/04/29 Python
Python tkinter和exe打包的方法
2020/02/05 Python
python 项目目录结构设置
2020/02/14 Python
基于Tensorflow的MNIST手写数字识别分类
2020/06/17 Python
Canvas实现贝赛尔曲线轨迹动画的示例代码
2019/04/25 HTML / CSS
全球性的女装店:storets
2019/06/12 全球购物
护理专业毕业生自我鉴定
2013/10/08 职场文书
班长自荐书范文
2014/02/11 职场文书
马丁路德金演讲稿
2014/05/19 职场文书
初中班级口号
2014/06/09 职场文书
领导干部对照检查材料
2014/08/24 职场文书
2015年技术员工作总结
2015/04/10 职场文书
原来闭幕词是这样写的呀!
2019/07/01 职场文书
MySQL 十大常用字符串函数详解
2021/06/30 MySQL
Java实现超大Excel文件解析(XSSF,SXSSF,easyExcel)
2022/07/15 Java/Android