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 相关文章推荐
js变量作用域及可访问性的探讨
Nov 23 Javascript
javascript 动态修改样式和层叠样式表代码
Apr 27 Javascript
IE6图片加载的一个BUG解决方法
Jul 13 Javascript
web的各种前端打印方法之jquery打印插件jqprint实现网页打印
Jan 09 Javascript
jQuery拖拽 &amp; 弹出层 介绍与示例
Dec 27 Javascript
仿淘宝TAB切换搜索框搜索切换的相关内容
Sep 21 Javascript
实现placeholder效果的方案汇总
Jun 11 Javascript
JS填写银行卡号每隔4位数字加一个空格
Dec 19 Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
Dec 27 Javascript
js实现简易垂直滚动条
Feb 22 Javascript
老生常谈javascript中逻辑运算符&amp;&amp;和||的返回值问题
Apr 13 Javascript
vue项目打包之后背景样式丢失的解决方案
Jan 17 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
你必须知道的Javascript知识点之&quot;深入理解作用域链&quot;的介绍
2013/04/23 Javascript
js用正则表达式来验证表单(比较齐全的资源)
2013/11/17 Javascript
jQuery使用contains过滤器实现精确匹配方法详解
2016/02/25 Javascript
web 屏蔽BackSpace键实例代码
2016/12/24 Javascript
JS实现队列的先进先出功能示例
2017/05/10 Javascript
20行js代码实现的贪吃蛇小游戏
2017/06/20 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
使用Vue动态生成form表单的实例代码
2018/04/26 Javascript
vue 属性拦截实现双向绑定的实例代码
2018/10/24 Javascript
微信小程序时间控件picker view使用详解
2018/12/28 Javascript
Vue-cli项目部署到Nginx服务器的方法
2019/11/01 Javascript
taro 实现购物车逻辑的实例代码
2020/06/05 Javascript
python使用递归解决全排列数字示例
2014/02/11 Python
python通过exifread模块获得图片exif信息的方法
2015/03/16 Python
python实现下载指定网址所有图片的方法
2015/08/08 Python
Python实现的绘制三维双螺旋线图形功能示例
2018/06/23 Python
python中将\\uxxxx转换为Unicode字符串的方法
2018/09/06 Python
python pandas cumsum求累计次数的用法
2019/07/29 Python
python处理document文档保留原样式
2019/09/23 Python
wxPython实现绘图小例子
2019/11/19 Python
python爬虫可以爬什么
2020/06/16 Python
浅谈Python 参数与变量
2020/06/20 Python
澳大利亚领先的睡衣品牌:Peter Alexander
2016/08/16 全球购物
DC Shoes官网:美国滑板鞋和服饰品牌
2017/09/03 全球购物
卡骆驰新加坡官网:Crocs新加坡
2018/06/12 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
CK巴西官方网站:Calvin Klein巴西
2019/07/19 全球购物
以下的初始化有什么区别
2013/12/16 面试题
蜜蜂引路教学反思
2014/02/04 职场文书
军校大学生个人的自我评价
2014/02/17 职场文书
行政部岗位职责范本
2014/03/13 职场文书
工人先锋号事迹材料
2014/12/24 职场文书
刑事起诉书范文
2015/05/19 职场文书
推广普通话的宣传语
2015/07/13 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang