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 相关文章推荐
jquery 输入框数字限制插件
Nov 10 Javascript
flexigrid 类似ext grid的JS表格代码
Jul 17 Javascript
JS限制上传图片大小不使用控件在本地实现
Dec 19 Javascript
如何通过javascript操作web控件的自定义属性
Nov 25 Javascript
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
May 05 Javascript
JS根据浏览器窗口大小实时动态改变网页文字大小的方法
Feb 25 Javascript
JavaScript如何实现跨域请求
Aug 05 Javascript
用js控件div的滚动条,让它在内容更新时自动滚到底部的实现方法
Oct 27 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
Nov 21 Javascript
vue动态改变背景图片demo分享
Sep 13 Javascript
layui的数据表格+springmvc实现搜索功能的例子
Sep 28 Javascript
vuex存值与取值的实例
Nov 06 Javascript
深入理解$.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
第二节 对象模型 [2]
2006/10/09 PHP
PHP文件读写操作之文件读取方法详解
2011/01/13 PHP
laravel5使用freetds连接sql server的方法
2018/12/07 PHP
jquery 最简单的属性菜单
2009/10/08 Javascript
关于JAVASCRIPT urldecode URL解码的问题
2012/01/08 Javascript
各浏览器中querySelector和querySelectorAll的实现差异分析
2012/05/23 Javascript
jQuery中first()方法用法实例
2015/01/06 Javascript
javascript实现给定半径求出圆的面积
2015/06/26 Javascript
JavaScript中日期的相关操作方法总结
2015/10/24 Javascript
正则表达式优化JSON字符串的技巧
2015/12/24 Javascript
Vue.js实现的表格增加删除demo示例
2018/05/22 Javascript
Bootstrap Table中的多选框删除功能
2018/07/15 Javascript
Bootstrap模态对话框中显示动态内容的方法
2018/08/10 Javascript
JS中如何轻松遍历对象属性的方式总结
2019/08/06 Javascript
jquery更改元素属性attr()方法操作示例
2020/05/22 jQuery
用python写的一个wordpress的采集程序
2016/02/27 Python
Python实现类似jQuery使用中的链式调用的示例
2016/06/16 Python
flask框架中勾子函数的使用详解
2018/08/01 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
2018/12/02 Python
Python设计模式之迭代器模式原理与用法实例分析
2019/01/10 Python
python opencv实现图像边缘检测
2019/04/29 Python
python中count函数简单的实例讲解
2020/02/06 Python
python学生管理系统的实现
2020/04/05 Python
用opencv给图片换背景色的示例代码
2020/07/08 Python
用python制作个视频下载器
2021/02/01 Python
罗德与泰勒百货官网:Lord & Taylor
2016/08/12 全球购物
绘画设计学生的个人自我评价
2013/09/20 职场文书
数控专业个人求职信范例
2013/11/29 职场文书
暑期实习鉴定
2013/12/16 职场文书
两年的个人工作自我评价
2014/01/10 职场文书
财务总监岗位职责
2014/03/07 职场文书
法人授权委托书范本
2014/04/04 职场文书
户外活动总结
2015/02/04 职场文书
如何才能写好调研报告?
2019/07/03 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
电脑开机弹出documents文件夹怎么回事?弹出documents文件夹解决方法
2022/04/08 数码科技