javascript函數定義方式及範圍

來源:互聯網
上載者:User

標籤:javascript函數定義方式及範圍

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">        <title>My JSP ‘test3.jsp‘ starting page</title>        <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css">    -->    <script src="js/jquery-2.1.1.min.js"></script>    <script>//        function test(a,b){//            return a+b;//        }//        //alert(typeof test);        //函數也是一種資料類型 function類型//        function test2(aa){//            aa();//        }//        function test3(){//            alert(‘test3‘);//        }//        //test2(test3);                 //函數可以當做資料傳入,還可以傳入匿名函數//        test2(function(){//            alert(‘匿名函數‘);//        });//        //在js函數中是可以嵌套的,避免這樣使用//        function test4(){//            function test5(){//                alert(‘test5‘);//            }//            test5();               //test5的範圍是在test4內部,外部不能直接存取,在test4中調用//        }//        //test4();        //js函數三種定義方式        //1.function語句式        function test(){                    }        //2.函數的直接量        var te=function test2(){                    }                //3.function建構函式式        var test3=new Function(‘a‘,‘b‘,‘return a+b‘);        //alert(test3(1,2));                //解析順序問題,對於function語句式的函數,javascript會優先解釋    //    test4();        function test4(){            alert(‘test4‘);        }        //alert(test());                     //undefined          //test();                             //無作用,執行test()函數時,還沒有執行到test5()函數處(只是有申明而已),所以未定義,表示申明了但是未賦值        var test=function test5(){            //alert(‘test5‘);        }                var t1=1;        function t2(){            var t1=2;            //function test(){return t1;}            //2            //var test=function(){return t1;}       //2            var test=new Function(‘return t1‘);   //建構函式方式式,具有頂級範圍,和卸載外面一樣,會輸出1            alert(test());        }        t2();    </script>  </head>    <body>    This is my JSP page. <br>  </body></html>


本文出自 “matengbing” 部落格,請務必保留此出處http://matengbing.blog.51cto.com/11395502/1878994

javascript函數定義方式及範圍

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.