js函数的调用

一、函数

1.输入两个,再输入运算符,得到结果(+-* /)

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" type="text/javascript">
            var num1 = window.prompt("输入第一个数字");
            var num2 = window.prompt("输入第二个数字");
            var operator = window.prompt("输入运算符号");
            if(operator == "+") {
                document.write("两个数字的和为" + (parseFloat(num1) + parseFloat(num2)));
            } else {
                document.write("没有匹配的");
            }
        </script>
    </head>

    <body>
    </body>

</html>
View Code

自定义函数:

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" type="text/javascript">
            var num1 = window.prompt("输入第一个数字");
            var num2 = window.prompt("输入第二个数字");
            var operator = window.prompt("输入运算符号");
            num1 = parseFloat(num1);
            num2 = parseFloat(num2);
            document.write("结果是" + jisuan(num1, num2, opener));

            function jisuan(num1, num2, operaor) {
                var result;
                if(operator == "+") {
                    result = num1 + num2;
                    document.write("两个数字的和为" + result);
                } else {
                    document.write("没有匹配的");
                }
                return result;
            }
        </script>
    </head>

    <body>
    </body>

</html>
View Code

2.如果其他的文件需要使用函数怎么做?

myfunction.jsp

function jisuan(num1, num2, operaor) {
    var result;
    if(operator == "+") {
        result = num1 + num2;
        document.write("两个数字的和为" + result);
    } else {
        document.write("没有匹配的");
    }
    return result;
}
View Code

html

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" src="js/myfunction.js"></script>
        <script language="JavaScript" type="text/javascript">
            var num1 = window.prompt("输入第一个数字");
            var num2 = window.prompt("输入第二个数字");
            var operator = window.prompt("输入运算符号");
            num1 = parseFloat(num1);
            num2 = parseFloat(num2);
            document.write("结果是" + jisuan(num1, num2, opener));
        </script>
    </head>

    <body>
    </body>

</html>
View Code

 3.eval()可以将字符串当做脚本来运行

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" src="js/myfunction.js"></script>
        <script language="JavaScript" type="text/javascript">
            var str = "window.alert('ok')";
            //    当做脚本来运行
            eval(str);
        </script>
    </head>

    <body>
    </body>

</html>
View Code

4.escape与unescape可以配合使用,防止出现乱码

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" src="js/myfunction.js"></script>
        <script language="JavaScript" type="text/javascript">
            var str1="顺平";
            var str2=escape(str1);
            window.alert(str2);
            var str3=unescape(str2);
            window.alert(str3);
        </script>
    </head>

    <body>
    </body>

</html>
View Code

二、函数的调用方法

 通过指向函数的变量去调用:

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" src="js/myfunction.js"></script>
        <script language="JavaScript" type="text/javascript">
            test("hello,world");
            window.alert(test); //打印出函数
            var val = test;
            val("背景图片");
        </script>
    </head>

    <body>
    </body>

</html>
View Code

var val = test(“大家好”)

带参数与不带参数的区别是带参数返回的是return值,没返回值则返回undefined

此递归输出什么?答案 3 3 4

1.函数的参数列表可以是多个的

2.参数列表可以是多个的,返回的类型可以是任意的

3.js支持参数个数可变的函数

在js中有多个argument可以访问所有的传入值,不关心参数的个数,只要参数名代号就行

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script language="JavaScript" type="text/jscript">
            function abc(){
                window.alert(arguments.length);
                for(var i=0;i<arguments.length;i++){
                    window.alert(arguments[i]);
                }
            }
            abc(20,31,32,342);
            
        </script>>
    </head>
    <body>
    </body>
</html>
View Code

;

猜你喜欢

转载自www.cnblogs.com/helloworld2019/p/10917022.html