javascript学习笔记(七) js函数介绍


Posted in Javascript onJune 19, 2012

1.函数内部属性 arguments
arguments用来保存函数的参数,arguments.callee指向拥有arguments对象的函数

//阶乘 
function factorial(num) { 
if (num <= 1) { 
return 1; 
} else { 
return num*arguments.callee(num-1); //用agreements.callee代替 
} 
} var trueFactorial = factorial; 
factorial = function { 
return 0; 
} 
alert(trueFactorial(5)); //20 
alert(factorial(5)); //0

2.函数的属性和方法
length属性,表示函数参数的个数

3. apply()和call()方法
apply()和call()方法的作用是传递参数或扩充函数的作用域

//传递参数 
function sum(num1,num2) { 
return num1+num2; 
} 
function callSum(num1,num2) { 
return sum.call(this,num1,num2); //第一个参数this,后面列举所有参数 
} 
alert(callSum(10,10)); //20 function calSum1(num1,num2) { 
return sum.apply(this,arguments); //第一个参数this,第二个参数arguments 
} 
function calSum2(num1,num2) { 
return sum.apply(this,[num1,num2]); //第一个参数this,第二个参数是参数数组 
} 
alert(callSum1(10,10)); //20 
alert(callSum2(10,10)); //20

//改变函数作用域 
window.color = "red"; 
var o = { color:"blue"}; 
function sayColor() { 
alert(this.color); 
} 
sayColor(); //red 
sayColor.call(this); //red 
sayColor.call(window);//red 
sayColor.call(o); //blue
Javascript 相关文章推荐
document.all与WEB标准
May 13 Javascript
浏览器常用高宽的jquery插件
Feb 24 Javascript
jquery中ajax学习笔记4
Oct 16 Javascript
固定背景实现的背景滚动特效示例分享
May 19 Javascript
jquery的ajax和getJson跨域获取json数据的实现方法
Feb 04 Javascript
JavaScript怎么判断图片是否加载完成以便获取其尺寸
May 08 Javascript
js中数组排序sort方法的原理分析
Nov 20 Javascript
javascript闭包的理解
Apr 01 Javascript
javascript实时显示当天日期的方法
May 20 Javascript
简单谈谈require模块化jquery和angular的问题
Jun 23 jQuery
使用Vue.js中的过滤器实现幂方求值的方法
Aug 27 Javascript
JS一分钟在github+Jekyll的博客中添加访问量功能的实现
Apr 03 Javascript
javascript学习笔记(六) Date 日期类型
Jun 19 #Javascript
javascript学习笔记(五) Array 数组类型介绍
Jun 19 #Javascript
javascript学习笔记(四) Number 数字类型
Jun 19 #Javascript
javascript学习笔记(三) String 字符串类型介绍
Jun 19 #Javascript
javascript学习笔记(二) js一些基本概念
Jun 18 #Javascript
javascript学习笔记(一) 在html中使用javascript
Jun 18 #Javascript
到处都是jQuery选择器的年代 不了解它们的性能,行吗
Jun 18 #Javascript
You might like
JAVA/JSP学习系列之七
2006/10/09 PHP
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
深入解析php之sphinx
2013/05/15 PHP
PHP中的日期加减方法示例
2014/08/21 PHP
Laravel源码解析之路由的使用和示例详解
2018/09/27 PHP
JQuery从头学起第二讲
2010/07/04 Javascript
判断对象是否Window的实现代码
2012/01/10 Javascript
基于jQuery选择器的整理集合
2013/04/26 Javascript
js中判断对象是否为空的三种实现方法
2013/12/23 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
2016/09/08 Javascript
关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库
2016/11/30 Javascript
bootstrap datepicker插件默认英文修改为中文
2017/07/28 Javascript
webpack4+Vue搭建自己的Vue-cli项目过程分享
2018/08/29 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
2019/06/18 jQuery
vue watch监控对象的简单方法示例
2021/01/07 Vue.js
Python读取YUV文件,并显示的方法
2018/12/04 Python
在Python中Dataframe通过print输出多行时显示省略号的实例
2018/12/22 Python
python logging.basicConfig不生效的原因及解决
2020/02/20 Python
Python列表切片常用操作实例解析
2020/03/10 Python
python适合做数据挖掘吗
2020/06/16 Python
CSS3 函数技巧 用css 实现js实现的事情(clac Counters Tooltip)
2017/08/15 HTML / CSS
澳大利亚领先的在线药房:Pharmacy Online(有中文站)
2020/02/22 全球购物
网络通讯中,端口有什么含义,端口的取值范围
2012/11/23 面试题
专业求职信撰写要诀
2014/02/18 职场文书
企业办公室主任岗位职责
2014/02/19 职场文书
党组织公开承诺书
2014/03/29 职场文书
志愿者宣传口号
2014/06/17 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
计算机实训报告范文
2014/11/05 职场文书
2014年财务工作总结范文
2014/11/11 职场文书
行政人事专员岗位职责
2015/04/07 职场文书
增值税发票丢失证明
2015/06/19 职场文书
常住证明范本
2015/06/23 职场文书
讲座新闻稿
2015/07/18 职场文书
2015小学师德工作总结
2015/07/21 职场文书
详解python中[-1]、[:-1]、[::-1]、[n::-1]使用方法
2021/04/25 Python