走入javascript(七) 函数 不定参 参数和return

1.函数
(1)函数不可以莫名其妙的执行
fn(); //自执行
document.onclick = fn; 事件执行函数 当事件执行的时候 函数不可以加括号
自执行前后位置都可以前后用的到

(2)不可以莫名其妙的出现一个匿名函数
通过var 定义的函数
var An = function(){}
函数自执行必须放到函数体的后边
(3)函数定义和函数表达式
function An(){
alert( 1 );    -----> 函数定义
};

var a = function(){
alert( 1 );   ----- > 函数表达式

a();

(function(){
alert(1)   ---->第二种函数表达式写法
}());

+function (){
alert( 1 )   ----->第三种函数表达式写法
}();
当在匿名函数前加一个+号,这个整体便会成一个函数表达式 -,~,!都可以。(+ - ~ !)只有这四种符号,后面跟一个匿名函数
,会将匿名函数变成函数表达式,函数表达式带括号便可以自执行。它们之间没有任何区别,这样做的好处在于,模块化代码

2.函数的参数
(1)function goudan(){小括号中的参数叫形参

}
goudan( 5 )函数自执行括号中的参数叫实际参数
参数的个数没有限制,参数之间用逗号隔开,形参名和定义变量的规则一样。如果有形参,却没有对应的实参,这时候这个形参变会为undefined
实参的个数和形参的个数不是必须一样,实参多,不报错,但也找不到对应的形参

(2)参数
形参:相当于一个变量,要满足变量的命名规则
实参;任何数据类型都可以做实参
匿名函数也可以做实参
(3)注意事项
当一个函数有var的定义并且自己有名字,会出问题 eg: var a = function b(){}
会以a为准,然而有些浏览器中,a和b有可能都会存在,b不是消失了,b可以在内部访问的到。
把一些复杂的代码放到一个函数中,需要的时候 函数名+括号执行,这就叫做封装

3.不定参arguments
sum(1,2,3,4,5,6,7,8,9,10,11,12);
function sum(){
var x = 0;
for(var i=0;i<arguments.length;i++ ){
x += arguments[i];
}
alert( x )
}

即使有形参,不定参也会存在,每个函数中都会有arguments,它对应的都是实参

4.return
当函数执行完后,相当于一个数据,默认为undefined 
如果想要函数内部的数据,就可以用return将其返回出去,直接拿是拿不到的,因为外部是无法访问函数中的数据的,函数中的数据是内部变量
只有return返回出去 才可以收到数据
当函数执行到return,就立即结束,不会在执行后面的代码了
5.js赋值的注意点
js不可以左边给右边,只可以右边给左边

eg:

var oBox = document.getElementById('box');
oBox.innerHTML = sum(1,2,3,4,5,6,7,8,9,10,11,12);



function sum(){
var x = 0;
for(var i=0;i<arguments.length;i++ ){
x += arguments[i];
}
alert( x );
return x;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值