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 相关文章推荐
js 第二代身份证号码的验证机制代码
May 12 Javascript
jQuery $.get 的妙用 访问本地文本文件
Jul 12 Javascript
Js 去掉字符串中的空格(实现代码)
Nov 19 Javascript
jQuery性能优化的38个建议
Mar 04 Javascript
Javascript学习笔记之数组的遍历和 length 属性
Nov 23 Javascript
jQuery中unwrap()方法用法实例
Jan 16 Javascript
javascript常用函数(1)
Nov 04 Javascript
关于cookie的初识和运用(js和jq)
Apr 07 Javascript
原生JS实现的放大镜效果实例代码
Oct 15 Javascript
Bootstrap的class样式小结
Dec 01 Javascript
详谈ES6中的迭代器(Iterator)和生成器(Generator)
Jul 31 Javascript
Vue Object.defineProperty及ProxyVue实现双向数据绑定
Sep 02 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
DC四月将推出百页特刊漫画 纪念小丑诞生80周年
2020/04/09 欧美动漫
用php的ob_start来生成静态页面的方法分析
2011/03/09 PHP
ie与session丢失(新窗口cookie丢失)实测及解决方案
2013/07/15 PHP
Laravel中间件实现原理详解
2016/10/09 PHP
js基于qrcode.js生成二维码的方法【附demo插件源码下载】
2016/12/28 PHP
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
2013/01/24 Javascript
基于JS实现Android,iOS一个手势动画效果
2016/04/27 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
微信小程序-详解数据缓存
2016/11/24 Javascript
微信小程序 欢迎界面开发的实例详解
2016/11/30 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
详解NodeJS框架express的路径映射(路由)功能及控制
2017/03/24 NodeJs
Webpack打包css后z-index被重新计算的解决方法
2017/06/18 Javascript
JavaScript解析任意形式的json树型结构展示
2017/07/23 Javascript
手机注册发送验证码倒计时的简单实例
2017/11/15 Javascript
使用vue如何构建一个自动建站项目
2018/02/05 Javascript
详解Vue项目中出现Loading chunk {n} failed问题的解决方法
2018/09/14 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
解决vue更新路由router-view复用组件内容不刷新的问题
2019/11/04 Javascript
微信小程序实现首页弹出广告
2020/12/03 Javascript
python网络编程学习笔记(九):数据库客户端 DB-API
2014/06/09 Python
python实现文本去重且不打乱原本顺序
2016/01/26 Python
python Opencv将图片转为字符画
2021/02/19 Python
pandas dataframe添加表格框线输出的方法
2019/02/08 Python
Python后台开发Django的教程详解(启动)
2019/04/08 Python
轻松制作精彩视频:Animoto
2018/09/19 全球购物
播音主持专业个人自我评价
2014/01/09 职场文书
《画风》教学反思
2014/04/16 职场文书
消防安全标语
2014/06/07 职场文书
小学生运动会通讯稿
2014/09/23 职场文书
领导欢迎词致辞
2015/01/23 职场文书
2015年高校辅导员工作总结
2015/04/20 职场文书
拉贝日记观后感
2015/06/05 职场文书
2016年村党支部公开承诺书
2016/03/24 职场文书
mysql sql常用语句大全
2022/06/21 MySQL
js前端图片加载异常兜底方案
2022/06/21 Javascript