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.ajax传递中文参数的解决方法 推荐
Mar 28 Javascript
js动态创建标签示例代码
Jun 09 Javascript
extjs_02_grid显示本地数据、显示跨域数据
Jun 23 Javascript
js实现的类似于asp数据字典的数据类型代码实例
Sep 03 Javascript
JavaScript中的console.dir()函数介绍
Dec 29 Javascript
JavaScript显示当前文档最后修改日期的方法
Mar 19 Javascript
JS实现光滑展开合拢的菜单效果代码
Sep 16 Javascript
从零开始学习Node.js系列教程一:http get和post用法分析
Apr 13 Javascript
基于vue-draggable 实现三级拖动排序效果
Jan 10 Javascript
Vue.js使用axios动态获取response里的data数据操作
Sep 08 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
Oct 09 Javascript
如何正确解决VuePress本地访问出现资源报错404的问题
Dec 03 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
关于拼配咖啡,你要知道
2021/03/03 咖啡文化
PHP daddslashes 使用方法介绍
2012/10/26 PHP
php定时计划任务的实现方法详解
2013/06/06 PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
2016/03/25 PHP
Laravel 解决composer相关操作提示php相关异常的问题
2019/10/23 PHP
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
2008/12/29 Javascript
javascript for循环从入门到偏门(效率优化+奇特用法)
2012/08/01 Javascript
JS判断数组中是否有重复值得三种实用方法
2013/08/16 Javascript
javascript 按键事件(兼容各浏览器)
2013/12/20 Javascript
node.js中的fs.lchownSync方法使用说明
2014/12/16 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
2016/06/18 Javascript
vue中动态添加class类名的方法
2018/09/05 Javascript
详解vuex 渐进式教程实例代码
2018/11/27 Javascript
vue3.0自定义指令(drectives)知识点总结
2020/12/27 Vue.js
利用python将图片转换成excel文档格式
2017/12/30 Python
python3+pyqt5+itchat微信定时发送消息的方法
2019/02/20 Python
Pytho爬虫中Requests设置请求头Headers的方法
2020/09/22 Python
Python接口自动化测试框架运行原理及流程
2020/11/30 Python
python+playwright微软自动化工具的使用
2021/02/02 Python
Python  Asyncio模块实现的生产消费者模型的方法
2021/03/01 Python
HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注
2013/01/31 HTML / CSS
开普敦通行证:Cape Town Pass
2019/07/18 全球购物
阿迪达斯越南官网:adidas越南
2020/07/19 全球购物
客服专员岗位职责范本
2013/11/29 职场文书
车间调度岗位职责
2013/11/30 职场文书
人力资源主管职责范本
2014/03/05 职场文书
2014年寒假社会实践活动心得体会
2014/04/07 职场文书
幼儿园六一活动总结
2014/08/27 职场文书
平安建设汇报材料
2014/12/29 职场文书
高中生打架检讨书1000字
2015/02/17 职场文书
劳动争议仲裁代理词
2015/05/25 职场文书
六一儿童节主持开场白
2015/05/28 职场文书
公文写作:工伤事故分析报告怎么写?
2019/11/05 职场文书
CSS3实现的3D隧道效果
2021/04/27 HTML / CSS
Pygame Time时间控制的具体使用详解
2021/11/17 Python
Python Django / Flask如何使用Elasticsearch
2022/04/19 Python