web概述10

函数定义
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <h3>函数定义</h3>
    <p>
        函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。<br />
        函数就是包裹在花括号中的代码块,前面使用了关键词 function:<br />
        function functionname()
        {<br />
        // 执行代码<br />
        }<br />
        当调用该函数时,会执行函数内的代码。可以在某事件发生时直接调用函数(比如当用户点击按钮时),并且可由 JavaScript 在任何位置进行调用。
        <br /><strong>JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。</strong>
    </p>
    <nav>
        <a href="计算器.html">计算器</a>
        <a href="进制转换.html">进制转换</a>
    </nav>
    <div>
        <form name="fm1">
            <input name="num1" />
            <input name="num2" />
            <input id="res" readonly/>
            <input type="button" onclick="ff()" value="计算"/>
        </form>
        <script language="javascript">
            function ff() {
                var v1 = document.fm1.num1.value;
                var vv = check(v1);
                if (!vv) {
                    document.fm1.num1.value = "";
                    document.fm1.num1.focus();
                    return;
                }
                var v2 = document.fm1.num2.value;
                var vv = check(v2);
                if (!vv) {
                    document.fm1.num2.value = "";
                    document.fm1.num2.focus();
                    return;
                }

                var lm = mm(v1, v2);
                document.getElementById("res").value="最大值为"+lm

                var ll = parseInt(v1) + parseInt(v2) - lm;
                var sum = 0;
                for (i = ll; i <= lm; i++) {
                    sum += jiecheng(i);
                }
                alert(sum);
            }

            function check(a) {
                if (isNaN(a)) {
                    window.alert("输入数据异常!");
                    return false;
                }
                return true;
            }

            function mm(a, b) {
                a = parseInt(a);
                b = parseInt(b);
                if (a == b) {
                    window.alert("输入数据异常!");
                    return 1;
                }
                if (a > b) return a;
                else return b;
            }

            function jiecheng(a) {
                var res = 1;
                for (i1 = 1; i1 <= a; i1++) {
                    res *= i1;
                }
                return res;
            }
        </script>
    </div>
    <h3>声明提升</h3>
    <p>
        JavaScript 中,函数及变量的声明都将被提升到函数的最顶部。在JavaScript 中,变量可以在使用后声明,也就是变量可以先使用再声明。
    </p>
    <p id="demo"></p>
    <script>
        x = 5; // 变量 x 设置为 5
        elem = document.getElementById("demo"); // 查找元素 
        elem.innerHTML = x;                     // 在元素中显示 x
        var x; // 声明 x
    </script>
</body>

</html>
函数基础
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //    1、函数是一个对象类型,标准方式使用new Function(函数参数,函数主体);
        //    2、标准方式建立的函数,遵循程序一般的逻辑(先定义再使用)。
        //    3、函数有另一种定义方式
        //        function 函数名称(函数参数) {
        //            函数主体
        //        }
        //        这种方式定义的函数,会优先被缓存。
        //    4、程序的书写顺序:
        //        先定义各种变量
        //        再书写程序逻辑
        //        最后是各种函数
        //    5、函数是有名称的先不执行的代码块。函数可以接受参数,可以返回值。
        //    6、函数的参数,可以在小括号内定义,也可以不定义,都存储在arguments对象中
        //        这个对象是一个数组。
        //    7、函数在js中可以用来定义作用域,任何内容都有自己的作用域。
        //    8、不同作用域下的同名变量,不是相同的。如果在一个作用域内(不管位置)定义了一个
        //        变量,那么,这个作用域内的所有同名变量就都是局部变量。
        //    9、包含的作用域之间,局部可以访问全局,但全局不能访问局部。
        //        不包含的作用域之间,不能访问。
        //    10、规则:
        //        除非必要,否则,不要滥用全局变量。
        //        建议优先使用局部变量。
        //        使用函数(通常是自调用函数)进行封装。
        //    func(2,3);
        //    var func = new Function("x,y","alert(x*y)");
        //    func(2,3)
        //    function func(x,y) {
        //        alert(x*y);
        //    }
        //argument 参数
        //    var x = jia(3,5,5) + 2;
        //    document.write(x);
        //    function jia(x,y) {
        //        var x = arguments[0];
        //        var y = arguments[1];
        //        var z = x + y;
        //        return z;
        //    }
        
        //    var x = 123;
        //    aa();
        //    function aa() {
        //        alert(x);
        //        x =  x + 1;
        //        alert(x);
        //        var x = 456;
        //        alert(x);
        //    }
        //    var x = 123
        //aa()
        //    function aa() {
        //        var x = 456;
        //        alert(window.x)
        //    }
        //    alert(aa(5));
        //    function aa(x) {
        //        return aa(x);
        //        function aa(x) {
        //            return aa(x);
        //            function aa(x) {
        //                return aa(x);
        //                function aa(x) {
        //                    return aa(x);
        //                    function aa(x) {
        //                        return x*2
        //                    }
        //                }
        //            }
        //        }
        //    }
        //    alert(中国(1000))
        //    function 中国(x) {
        //        return 陕西(x/2)
        //        function 陕西(x) {
        //            return 西安(x/2)
        //            function 西安(x) {
        //                return x
        //            }
        //        }
        //    }
        //    var x = 123
        //
        //    function aa() {
        //        var  www = 123
        //    }
        //
        //    function bb() {
        //        var x = www
        //    }
        //构造函数(构造了对象的原型)
        //    var date = new Date();
        //    var xiaoming = new liqiang();
        //xiaoming.prototype.a=123
        //    document.write(
        //            xiaoming.shengao
        //    )
        //
        //
        //
        //
        //    function liqiang() {
        //        this.shengao = 183;
        //        this.age = 18;
        //        this.tizhong = 65;
        //        this.a = 123
            }
        //    匿名函数
        //    obj.onclick = function () {
        //
        //    }
        //    自调用函数(自执行函数):
        //        使用小括号将一个匿名函数包裹,后跟执行符的形式,叫自调用函数。
        //        (function () {})()
        //        必然执行一次且只执行一次。
        //        自调用函数之前的语句,必须使用分号结束!!!!!!!。
        //var x = 123;
        //(function () {})()
        //(function () {
        //    var x = 123;
        //    var y = 456;
        //    document.write(x+y);
        //})();
        //    aa()
        //    aa()
        //    function aa() {
        //        var x = 123;
        //        var y = 456;
        //        document.write(x+y);
        //    }
        //    闭包   封装
        //    闭包是通过函数的操作,使得全局能够访问局部的变量,这叫做闭包的过程,这个函数叫做闭包函数
        //闭包函数: 通过全局函数打包局部变量的函数叫闭包函数。
        //aa()()
        //    function aa() {
        //        var x = 123;
        //        return function () {
        //            alert(x);
        //        }
        //    }
        
        </script>
        </body>
        </html>
计算器
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style type="text/css">
        .ttt {
            font-family: "华文彩云";
            font-size: 24px;
            font-style: normal;
            font-weight: bolder;
            color: #FF0000;
        }
    </style>
</head>
<script language="javascript">
    function ff() {
        var v1 = document.fm1.num1.value;
        if (isNaN(v1)) {
            alert("输入数据1异常!");
            document.fm1.num1.value = "";
            return;
        }
        var op = document.fm1.oper.value;
        var v2 = document.fm1.num2.value;
        if (isNaN(v2)) {
            alert("输入数据2异常!");
            document.fm1.num2.value = "";
            return;
        }
        var res = v1 + op + v2;
        res = eval(res);

        document.fm1.num3.value = res;
    }
</script>

<body>
    <form name="fm1">
        <p>
            <input name="num1" class="ttt" value="0" size="6" maxlength="6" />
            <select name="oper" class="ttt">
                <option value="+">+</option>
                <option value="-">-</option>
                <option value="*">*</option>
                <option value="/">/</option>
                <option value="%">%</option>
            </select>
            <input name="num2" class="ttt" value="0" size="6" maxlength="6" />
            <strong class="ttt">=</strong>
            <input name="num3" disabled class="ttt" value="0" size="12" maxlength="12" />
        </p>
        <p><input type="button" onclick="ff()" value="计算" /></p>
    </form>
</body>

</html>
进制转换
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<script language="javascript">
    function ff() {
        var v1 = document.fm1.num1.value;
        var v2 = document.fm1.num2.value;
        var res = parseInt(v1, v2);
        alert(res);
        document.all.bb.innerHTML = v1 + "<sub>" + v2 + "</sub>=" + "<font color=red size=36>" + res + "</font><sub>10</sub>";
    }
    function hh() {
        var v1 = document.fm2.num1.value;
        var v2 = document.fm2.num2.value;
        v1 = parseInt(v1);
        var res = v1.toString(v2);
        alert(res);
        document.all.bb.innerHTML = v1 + "<sub>10</sub>=" + "<font color=red size=36>" + res + "</font><sub>" + v2 + "</sub>";
    }
</script>

<body>
    <h1>任意数制数据转换为十进制数据</h1>
    <form name="fm1">
        <input name="num1" />
        <select name="num2">
            <script>
                for (i = 2; i <= 36; i++) {
                    document.write("<option value='", i, "'>", i, "</option>");
                }
            </script>
        </select>
        <input type="button" onclick="ff()" value="转为十进制" />
    </form>

    <hr color="#FF0000" size="5" />
    <h1>十进制数据转换为任意数制数据</h1>
    <form name="fm2">
        <input name="num1" />
        <strong>=</strong>
        <select name="num2">
            <script>
                for (i = 2; i <= 36; i++) {
                    document.write("<option value='", i, "'>", i, "</option>");
                }
            </script>
        </select>
        <input type="button" onclick="hh()" value="转换" />
    </form>
    <hr />
    <div id="bb"></div>
</body>

</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值