函数定义,函数劫持,全局函数

函数的定义

1.采用关键字function来定义

function  fun{
  alert("你好");
}
  fun( );

2.采用匿名函数的方式(采用function作为名字,类似接口)
  var a  = function{
  alert("你好");
}
  a( );

3.(了解)采用new Function方式
  var b = new Function("x","y","alert(x+y)");
  b(3,4);

函数的调用:
  1.调用的时候参数可以传递多个,可以和函数定义的形参个数不同
  2.如果函数重名了,则调用最后一个,与参数无关
(调用的时候是根据函数名来的,故不能使用相同函数名,即没有重载的概念)

函数劫持

函数劫持:改变JS的函数预定义好的功能
例如将alert的功能改变为打印而非弹出
window.alert = function(x){
  document.write(x);
}
  alert("abc");

全局函数(掌握isNaN eval)

NaN:not a number
1.(掌握)isNaN:是不是一个数字(返回true,则不是一个数字)
var  a = "|100";
if(isNaN(a)){
  alert("不是数字");
}else
    alert("是数字");

2.parseInt, parseFloat

3.(掌握)eval : 
a.主要执行字符串,将结果转换为数字
  alert(eval("3 + 10") + eval("2")) ; 
  //先将字符串中的相加,最后结果为15
b.将 json 格式的字符串转换为 json 
(键值对,例如 {"a":"中国","b":"美国","c":"日本"} )

4.escape( ) :编码
         var b = "中国" ;
         var c = escape(b) ;
         alert(c) ;
         alert(unescape(c)) ;
unescape( ):解码
encodeURI(e)  //对网址url进行编码 
decodeURI(f) //对网址url进行解码

var e = "http://www.sohu.com?a=中国&b=美国" ;
         var f = encodeURI(e) ;
         alert(f) ;
         alert(decodeURI(f)) ;

推荐阅读更多精彩内容