JavaScript学习笔记1

代码1:
<pre name="code" class="html"><html>
	<head>
		<script type="text/javascript">
			
		function add(number)
		{
		 	alert(number + 20);	
		}
		/*
		var add = function(number)
		{
			alert(number);
		}
		*/
		function add(number, number1)
		{
			alert(number);
			alert(number1);
		}
		
		/*
		var add = function(number, number1)
		{
			alert(number + 30);
		}	
		*/
		add(10);
		</script>
	</head>
	<body>
	</body>
</html>


 
 

在JavaScript中,函数(function)就是对象。由代码1可知,function其实是一个对象,而var add中的add就是指向这个对象的一个引用。


在JavaScript中,没有方法(函数)重载的概念。因为add是一个引用,后一个add引用会重新覆盖前一个对象


代码2:

<html>
	<head>
		<script type="text/javascript">					

		//add(20);

		var add = new Function("number", "number1", "alert(number + number1);");

		var add = new Function("number", "alert(number + 20);");

		add(10, 30);

		</script>
	</head>
	<body>
	
	</body>
</html>

在JavaScript中有一个Function对象,所有自定义的函数都是Function对象类型的。Function对象接收的所有参数都是字符串类型的,其中最后一个参数就是要执行的函数体,而前面的参数则是函数真正需要接收的参数。


代码3:


<html>

	<head>

		<script type="text/javascript">
			
		function add(number1, number2)
		{
			alert(arguments.length);			
			alert(arguments[0]);
			alert(arguments[1]);
			alert(arguments[2]);
		}	

		//add(2, 3, 4);

		
		function add2()
		{
			if(1 == arguments.length)
			{
				alert(arguments[0]);
			}
			else if(2 == arguments.length)
			{
				alert(arguments[0] + arguments[1]);
			}
			else if(3 == arguments.length)
			{
				alert(arguments[0] + arguments[1] + arguments[2]);
			}
		}
		
		add2(3);
		add2(3, 4);
		add2(3, 4, 5);
		</script>
	</head>
	<body>
	
	</body>
</html>

在JavaScript中,每个函数都有一个隐含的对象arguments,表示给函数实际传递的参数。可以通过argument参数一定程度上模拟函数的重载。例如代码3中的add2

你可能感兴趣的:(JavaScript学习笔记1)