javascript函数

js函数:封装了很多功能

1、js函数定义的方式

(1)普通方式
            语法:function 函数名(参数列表){函数体}
            示例:
                function method(){      //定义函数
                    alert("xxx");
                }
                method();       //函数调用
(2)匿名函数(经常使用)
            语法:function(参数列表){函数体}
            示例:
                var method = function(){
                    alert("yyy");
                };
                method();

                var任何类型都可以接收,所以也可以接收一个函数类型
(3)对象函数
            语法:new Function(参数1,参数2,...,函数体);
            注意:参数名称必须使用字符串形式、最后一个默认是函数体且函数体需要字符串形式
            示例:
                var fn = new Function("a","b","alert(a+b)");
                fn(2,5);

2、函数的参数

(1)形参没有var去修饰
        因为var可以定义所有类型的数据
(2)形参和实参个数不一定相等
(3)arguments对象 是个数组 会将传递的实参进行封装
        function fn(a,b,c){
            //var sum = a+b+c;
            //alert(sum);
            //arguments是个数组 会将传递的实参进行封装
            for(var i=0;i<arguments.length;i++){
                alert(arguments[i]);    //1,2,4,8
            }
        }
        fn(1,2,4,8);

3、返回值

(1)在定义函数的时候不必表明是否具有返回值
(2)返回值仅仅通过return关键字就可以了,return后的代码不执行

        function fn(a,b){
            return a+b;
            //alert("xxxx");
        }
        alert(fn(2,3));

4、js的全局函数

全局函数:js为我们已经定义好的函数,不需要对象.函数名()调用,直接就可以使用

(1)编码和解码
            encodeURI()   decodeURI()
            encodeURIComponet()   decodeURIComponent()
            escape()    unescape()
三者区别:
        进行编码的符号范围不同吧,实际开发中常使用第一种

示例:
        var url = "http://www.baidu.com?name=zhangsan&password=123";

            alert(encodeURI(url));
            //http://www.baidu.com?name=zhangsan&password=123
            alert(encodeURIComponent(url));
            //http%3A%2F%2Fwww.baidu.com%3Fname%3Dzhangsan%26password%3D123
            alert(escape(url));
            //http%3A//www.baidu.com%3Fname%3Dzhangsan%26password%3D123

(2)强制转换
        Number()
        String()
        Boolean()
(3)转成数字
        parseInt()
        parseFloat()
(4)eval()方法 
            将字符串当作脚本进行解析运行

        //var str = "var a=2;var b=3;alert(a+b)";
        //eval(str);            //5
        function print(str){
            eval(str);
        }
        print("自定义逻辑");

js全局函数

posted @ 2017-08-14 10:08  Soar_Sir  阅读(154)  评论(0编辑  收藏  举报