首页 > 代码库 > javascript函数定义方式及作用域
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="http://www.mamicode.com/"> <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="http://www.mamicode.com/styles.css"> --> <script src="http://www.mamicode.com/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个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。