码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript基础学习(六)—函数

时间:2016-04-27 22:03:42      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

一、函数的定义

1.function语句形式

			//1.function语句式
			function test1(){
				alert("I am test1");
			}
			
			test1();

 

2.函数直接量形式

			//2.函数直接量形式
			var test2 = function(){
				alert("I am test2");
			}
			test2();

 

3.通过Function构造函数形式

     Function构造函数可以接收任意数量的参数,但最后一个参数始终都被看成函数体。我们不推荐使用,因为这种语法会导致解析两次代码,第一次是解析常规的JS代码,第二次是解析传入构造函数中的字符串,从而影响性能。

			//3.通过Function构造函数形式
			var test3 = new Function("a","b","return a + b");
			alert(test3(10,20));

 

4.三种方式的区别

     技术分享

			/*
			 * 测试解析时机
			 */
			test1();// I am test1
			function test1(){
				alert("I am test1");
			}
			
			test2();//报错
			var test2 = function(){
				alert("I am test2");
			}
			
			alert(test3(10,20));
			var test3 = new Function("a","b","return a + b");

     function语句是会被JS解析器优先解析。

 

			/*
			 * 测试函数作用域
			 */
			
			var k = 1;
			
			function test(){
				var k = 2;
				
				function demo(){
					return k;
				}
				
				var demo = function(){
					return k;
				}
				
				var demo = new Function("return k");
				
				//1.function语句式: 2
				//2.function字面量式: 2
				//3.Function构造函数式: 1
				alert(demo());
				
			}			
			
			test();

JavaScript基础学习(六)—函数

标签:

原文地址:http://www.cnblogs.com/yangang2013/p/5440330.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!