韓順平 javascript教學視頻_學習筆記8_js系統函數_js函數調用方式

函數——函數的使用


系統函數:


其中 eval() 用的很多,它可以把一個字符串當做腳本來執行,在需要動態腳本的時候用的比較多。
如:

var str="window.alert('OK')";
 
//需求是把str當作一個腳本來運行,用eval()函數
eval(str);

由於一些瀏覽器對中文的支持並不是很好,容易出現亂碼的情況,這時就可以使用escape和unescape兩個函數對中文先編碼再解碼,這樣就可以在任何計算機上顯示中文或其他字符串,而不會出現亂碼。

escape() 函數可對字符串進行編碼,這樣就可以在所有的計算機上讀取該字符串。
unescape() 函數可對通過 escape() 編碼的字符串進行解碼。

var str1 = "你好";
var str2 = escape(str1); //對字符串進行編碼
window.alert(str2);
			
var str3 = unescape(str2); //對由 escape() 編碼的字符串進行解碼
window.alert(str3);


除了全局函數外,還有許多對象方法(注:他們屬於對象方法,而不是全局函數)



函數——函數的定義

函數的定義
有的程序員把函數稱爲方法,方法其實就是函數,是一個意思。


function 函數名(參數列表){

    語句; //函數(方法)主體

    return 返回值;
}



1. 參數列表:表示函數的輸入
2. 函數主體:表示爲了實現某一功能代碼塊
3. 函數可以有返回值,也可以沒有


函數的幾種調用方式

  • 普通調用
         函數名(實際參數…);
  • 通過指向函數的變量去調用
var myvar=函數名;
myvar(實際參數);


下面舉個例子:


先定義一個 myfuns.js 文件,寫一個函數,如下:

function test(val){
	window.alert("你輸入的是"+val);
}

再寫一個html文件
<html>  
	<head>  
		<script language="javascript" src="myfuns.js"></script>  
		<script language="javascript">  
			
			test('hello world'); //普通調用
			
			var myvar = test; //通過指向函數的變量去調用,此時變量就相當於函數的引用(指針)
			myvar("中國北京");
            window.alert(test); //這句話返回什麼,自己試試
			
		</script>  
	</head>  
	<body></body>  
</html>  


下面談論下函數返回值的問題

比如,test() 函數沒有返回值,如下:

function test(val){
	window.alert("你輸入的是"+val);
}


那麼,看html代碼,如下

<html>  
	<head>  
		<script language="javascript" src="myfuns.js"></script>  
		<script language="javascript">  
						
			var myvar = test("abc");
			//如果test函數沒有返回值,但是你又接收了,則返回的就是undefined
			window.alert(myvar);//這句話的結果就是先輸出abc,然後再輸出undefined
			
		</script>  
	</head>  
	<body></body>  
</html>  



再來看test()函數有返回值的情況,如下

function test(val){
 
	window.alert("你輸入的是"+val);
 
	return 10;
}


html代碼如下:
<html>  
	<head>  
		<script language="javascript" src="myfuns.js"></script>  
		<script language="javascript">  
						
			var myvar = test("abc");
			window.alert(myvar);//這句話的結果就是先輸出abc,然後再輸出10,也就是說myvar就是test()函數的返回值,這很好理解
			
		</script>  
	</head>  
	<body></body>  
</html>  



注意以上兩點即可


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章