<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>	
		<div id="demo"></div>
		<p><div id="id2"></div><button onclick="myObject.fullName()">点击切换</button></p>
		<div id="id3"></div>
		<button onclick="num12('实参一','实参二','实参三')">点击切换传三个参数</button>
		<p><div id="id4">3</div>
		<button onclick="doAdd(3)">传的是3,点击实现加10,使用new的方式的函数</button></p>
		<p><div id="id5">使用arguments来判断形参的长度</div>
		<button onclick="num13(1,2,3,5)">函数是3个形参,我传了4个实参,点击出现传入的参数个数</button></br>
		这里的参数是传入的实参的个数与函数的形参的个数无关,当形参的个数为3,传入的实参为4 显示的4
		</p>
		
		
	<script> //传入一个对象 var Person={ name:"小王先生", age:15, info:function(){ document.getElementById("id2").innerHTML = "我是小王名字叫"+this.name;//this的注意点 console.log("我是小王名字叫"+this.name) } } var myObject = { firstName:"John", lastName: "Doe", fullName: function () { document.getElementById("id2").innerHTML = "我是使用对象调用的方法"+this.firstName+this.lastName; } } //使用对象的时候调用方法 myObject.fullName(); /* * 第一种方式 */ function num1(params1,params2){ console.log("参数一"+params1+"参数二"+params2); } num1("方式一","方式二"); //———————————————————————————————————————————————————————————————————————————————————————————————— //下面是实参与形参的区别 当形参大于实参的时候按照顺序给与赋值 function num11(params1,params2,params3){ document.getElementById("id3").innerHTML = "我的形参是三个,只传了两个实参,从左到右依次显示1参数一"+params1+"1参数二"+params2+"1参数三"+params3; } num11("实参一","实参二"); //当实参大于形参时,实参后面的会被忽略 function num12(params1,params2){ document.getElementById("id3").innerHTML = "我的形参是两个,传了三个,多于的不显示1参数一"+params1+"1参数二"+params2; console.log("2参数一"+params1+"2参数二"+params2); } //num12("实参一","实参二","实参三"); function num13(a,b,c){ //使用arguments来判断形参的长度 document.getElementById("id5").innerHTML =arguments.length ; console.log(arguments.length); } //num13(1,2,3); //———————————————————————————————————————————————————————————————————————————————————————————————— /* *第二种方式 */ var num2=function(params1,params2){ console.log("参数"+params1+"参数"+params2.name); //调用对象的方法 params2.info(); } num2("方式一",Person); //———————————————————————————————————————————————————————————————————————————————————————————————— /** * 方式三 */ var doAdd = new Function("iNum", "document.getElementById('id4').innerHTML =iNum+10"); //doAdd(3); //———————————————————————————————————————————————————————————————————————————————————————————————— /** * 方式四 */ (function () { console.log("Hello方式四"); // 我将调用自己 })(); //后面的括号为前面的参数传值,可以传方法,传值,传对象 (function (a,b) { console.log(a); b(); })(3,function(){ document.getElementById("demo").innerHTML = "Hello! 我是方式四,我是自己调用的"; } ); </script>
</html>