javaScript函数使用
来源:互联网 发布:淘宝现在交易额多少了 编辑:程序博客网 时间:2024/06/06 17:28
函数使用
什么是函数
有一定功能代码体的集合。
函数的封装
传统方式
function函数名(){}
该方式声明的函数的有预加载的过程,可以先调用在,再声明函数。
预加载:代码先把函数的声明放入内存,本质上是先声明再调用。
函数先调用,后声明的条件是,全部的代码在一个“<script>”标记里面
<script type="text/javascript">
getInfo();
function getInfo(){
console.log("hello");
}
</script>
变量使用(匿名函数)
var 函数名=function(){}该方式不具备预加载,必须先声明,再使用
<script type="text/javascript">
function getInfo(){
console.log("hello");
}
getInfo();
</script>
函数实参形参关系
JavaScript里面实参和形参没有实际上的对应关系
<script type="text/javascript">
function f1(name,age,add="BeiJing"){
console.log("个人信息:"+name+age+add);
}
f1("Summer","12","ShangHai");
f1("Summer");
f1();
</script>
关键字arguments
利用arguments可以接受参数在函数中传递的信息,实现重载的效果
<script type="text/javascript">
function f1(){
var len=arguments.length;
if(len==0){
console.log("个人信息");
}
else if(len==1){
console.log("个人信息:name="+arguments[0]);
}
else if(len==2){
console.log("个人信息:name="+arguments[0]+";age="+arguments[1]);
}
}
f1();
f1("Spring");
f1("Summer","12");
</script>
callee关键字
定义:在函数的内部使用,代表当前函数的引用;
function f1(){
xxxx具体执行代码
arguments.callee(); //调用本函数(或者f1())
//都可以使得本函数执行,我们选择callee,其可以降低代码的耦合度。
xxxx执行代码
}
f1();
耦合:一处代码的修改会导致其他代码也要发生改变。
在程序项目里边要开发低耦合度的代码。
<script type="text/javascript">
//求5的阶乘
function jiecheng(n){
if(n==1){
return 1;
}else{
return n*arguments.callee(n-1);
}
}
console.log(jiecheng(3));
console.log(jiecheng(5));
//这里函数的名改变时,可以明显体会到callee可以降低代码的耦合度
var jc=jiecheng;
jiecheng=null;//这里销毁jiecheng避免后面使用
console.log(jc(4));
</script>
函数的返回值
一个函数执行完毕需要返回具体的信息,使用return关键字返回信息。
在一定层度上看,全部的数据类型(数值、字符串、布尔、对象、null)信息都可以返回
return本身还可以结束函数的执行。
在函数内部返回一个函数出来。
在javascript里边,一切都是对象
在一个函数内部,可以声明数值、字符串、布尔、对象等局部变量信息,言外之意就还可以声明函数(函数内部还要嵌套函数),因为函数是对象,并且函数可以被return给返回出来。
<script type="text/javascript">
//求5的阶乘
function f1(n){
var name="tom";
var age=13;
var iseat=false;
function f2(){
console.log("I am f2 function");
}
return f2;//这里返回函数内部的嵌套函数
}
var ff=f1();//f1()函数执行完毕的返回值被ff接受
ff();
</script>
函数的调用
传统方式调用
f1()
匿名函数自调用
(function(){})();
<script type="text/javascript">
var f1=function(){
console.log("spring");
}
//var f1="Tom";//覆盖上面的函数
f1();
//匿名函数自调用的好处:本身不会被同名变量覆盖
(function(){
console.log("summer");
})();
(function(add){
console.log("地址:"+add);
})("上海");
</script>
- JavaScript 函数使用详解
- javascript函数的使用
- javascript常用函数使用
- javaScript函数使用
- JavaScript的函数使用
- JavaScript函数使用要点
- 使用javascript的日期函数
- javascript---eval函数的使用
- Javascript数组函数的使用
- JavaScript正则函数的使用
- javascript的bind()函数使用
- JavaScript - 可变参数函数使用
- JavaScript addLoadEvent函数使用详解
- splice() 函数的使用【JavaScript】
- javascript 自定义函数,使用class
- javascript基本使用 7 ------函数
- Javascript 函数声明及使用
- JavaScript的函数的使用
- 实现cell的动态的行高
- 习题22 到现在你学到了哪些东西
- UIKit和Core Graphics绘图——字符串,线条,矩形,渐变
- 字符串练习-统计单词数
- angular-file-upload
- javaScript函数使用
- POJ 1651 Multiplication Puzzle(区间dp)
- Linux命令常用之man
- String类内存分析
- 计算机网络——计算机网络概述(1)
- POJ3006
- Ubuntu 16.04中 Qt 5.6 中无法调用fcitx输入中文的问题
- AngularJS中的基础路由,通过ng-route实现基本的路由功能
- ios开发库