javascrip Function

javascript函数
在javascirpt 1.1中除了可以使用 function 语句定义函数之外,还可以使用Function()构造函数来定义函数,
var 函数名=new Function("参数1","参数2","参数3"....."函数体");
var myfun=new Function("x","y","return x+y ;");
var myfun=new Function("x","y","var num=x+y;return num;");
上面代码使用Function()构造函数定义了一个名为 myfun 的函数,
function myfun(x,y)
{
return x+y;
}
使用Function()构造函数和使用function语句的区别:
1.使用Function()构造函数可以动态定义和编译,而function语句只能预编译,因此所在每次调用使用Function()
函数是需要经常使用的函数应该避免使用Function来定义函数
2.使用Funciton()构造函数定义函数时,可以将函数的定义写成表达式,而使用Function的语句就是语句块
3.使用Funciton()构造函数可以在一个表达式中定义函数,而funciton语句就不能。

function myfun(x,y)
{
 if(typeof(x)=="number"&&typeof(y)=="number")
 {
  var z=x*y;
  return z;
 }else
 {
  return "传入参数不正确";
 }
}

 

在JavaScirpt中提供了一个Arguments对象,该对象可以获取从javascirpt函数中传过来的参数,并
净这些参数放在argu
ments[]数组中,
function mufun(x,y)
{
 if(arguments.length!=2) return "参数不正确";
 //arguments[0];是函数的第一个参数
}

caller属性:判断函数调用情况

// caller demo { 
function callerDemo() { 
    if (callerDemo.caller) { 
        var a= callerDemo.caller.toString(); 
        alert(a); 
    } else { 
        alert("this is a top function"); 
    } 
} 
function handleCaller() { 
    callerDemo(); 
}

 
系统函数
1.编码函数escape("abc!#$%");将字符串中的非文字,数字的字符转换成相应的ASCII码值。
2.解码函数unescape();是将ASII码的文字转换成一般的文字和 escape();功能相反

3.系统函数 call 和 apply使用如下:

 function MyClass(){
   
}
MyClass.prototype.addAge(a,b){
   return a+b;
};

var myclass = new MyClass();
var fun = myclass.addAge;
//call
func.call(myclass,5,6);//this or obj, 参数1,参数2,参数3。。。

//apply
func.apply(myclass,[5,6]);//this or obj, 然后数组[]

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值