function test(a,b){
//var a;
//var b;
}
这里()添加的参数a b,相当于 var a 和var b 声明了两个变量
。
function test(a,b){
}
test(1, 2);
这里的test( 1,2) 等于对 a b 赋值。
。
function test(a,b){
doucument.write(a + b);
}
test(1, 2);
这里赋值之后进行加减法。 。
function sum(a,b){
var c= a + b;
doucument.write(c);//这里打印出来页面上显示。
//如果需要在控制台显示就打 console.log(c);
}
sum(1,2);
这个函数的功能就是两个数相加。 把a 和 b 变量了 变成参数。
。。。。
详细解释 //形式参数- 形参
var c= a + b;
doucument.write(c);
}
//实际参数-实参
sum(1 , 2 );
//来个判断
function sum(a , b){
if(a>10){
document.write(a-b);
}else if(a < 10){
document.write(a + b);
}else{
document.write(10);
}
}
//实际参数-实参
sum(11,2)
不定参 参数 数量可以不定 谁比谁多无所谓
document.write(a);
}
//实际参数-参数
sum(11,2,3)
//这里只打印11
。。。
形参多,实参少也可以,是没有实参的 就打印undefined
function sum(a, b ,c, d){
document.write(a);
document.write(d);
}
//实际参数--实参
sum(11,2,3)
这种参数的好处是 大家往下看
//先一步一步的来,
function sum(a,b,c,d){
//arguments--[11,2,3]这个是下面的实参列表
//arguments 系统自带的数组
console.log(sum.length);
}
//实际参数-实参
sum(11,2,3)
。。。
我们来举例来玩一下
function sum(a,b,c,d){
if(sum.length > arguments.length) {
console.log(' 形参多了')
}else if(sum.length <argumentss.length){
console.log('实参多了')
}else{
console.log('相等')
}
}
//实际参数- 实参
sum(11 , 2 ,3);
`
//
//我们举例来玩一下 ,不固定形参列表的好处,
//不定参比定参功能强大得多 scream
//任意个数求和
function sum(){
//arguments[1,2,3,4,5,6,7,8,9];
var result = 0;
for( var i = 0; i <arguments.length; i++){
result +=arguments[i];
}
console.log(result);
}
sum (1,2,3,4,5,6,7,8,9)
//这样就把sum里面的和求出来。
** 形参合实参是映射关系 谁变对方都要变 **
function sum(a,b){
//arguments[1,2];
//var a = 1;
a = 2
arguments[0] = 3;
console.log(a);
}
sum(1,2);
**但是有一种特殊特殊情况
举例
实参一个,形参有两个
这个时候arguments[1] 就没有值了 这个时候b= 2 ,就是 undefined
所以实参列表出生的时候有几个 他就有几个
所以结论是 形参和实参 数量相等才有映射关系
**
function sum(a,b){
b =2;
console.log(arguments[1]);
}
sum[1];
//以上这种就无效
常用关键词return 识别到return 函数就会终止 ,如果我们没写 系统会自动写 如果写到中间,所以这个不能瞎写,第一点功能
function sum(a,b){
console.log('a');
return;
console.log(b);//这一行就不会执行
}
sum(1,2);
return第二点常用功能 返回值的意思 他的本意是把一个值返回到函数的外部
function sum(){
return 123;
}
//sum(1);
var num = sum{};
//这里的123就被扔回来聊
所以这个是又返回 又终止
累加累和
function myNumber(target){
return +target;
}
var num = myNumber('123');
console.log(typeof(num) + " " + num );
//这里是Number 空格 123
说一个 typeof的问题, typeof 也是函数 加空格的意思
练习题。。附答案
第一个题
function scream(animal){
switch(animal){
case "dog":
document.write('wang!');
return;
case " cat":
document.write('miao!');
return;
case "fish":
document.write('~0~0~0~')
//这个是鱼吐得泡泡 哈哈
}
}
第二个题
function sum(){
//arguments[1,2,3,4,5,6,7,8,9];
var result = 0;
for( var i = 0; i <arguments.length; i++){
result +=arguments[i];
}
console.log(result);
}
sum (1,2,3,4,5,6,7,8,9)
第三个题 定义一组函数,输入数字,逆转并输出汉字形式
//首先 先实现数字的逆转 输入123 返回321
function reverse(){
var num =window.prompt('input');//输入框
var stt = ""; //容器
for(var i =num.length-1; i >=0; i--){
str +=transfer(num[i]);
}
document.write(str);
}
// 上面的代码内容就是 输入数字 逆转打印出来
//单独的功能 单独的写出来
function transfer(target){
switch(target){
case "1":
return "壹";
case "2":
return "两";
case "3":
return "弎";
}
}
reverse();
第四个题
function jc(n) {
if (n == 1) {
return 1;
}
return n * jc (n -1);
document.write();
}
document.write( jc(5));
第五个题
// 1、1、2、3、5、8、13、21、34、
// f s t
// 1 1 2 3 5 8
// f s t
var n = parseInt(window.prompt('input'));
var first = 1,
second =1,
third;
if (n > 2) {
for( var i = 0; i < n - 2; i++){
third = first + second;
first = second;
second = third;
}
document.write(third);
}else{
document.write(1);
}