昨天是初學js的第一天,為什么今天才寫,我覺得這樣可以幫助我復習昨天的知識,加深對js的理解。
我之前學過java的,昨天轉入js的學習,對js略有些體會和大家分享下,js剛入門感覺js相對於java也沒有什么難的,聲明變量只需要用var就行了,同一變量名能代表不同變量的值之類的。
昨天主要學了js三種導入html的方法、js書寫規范、變量的基本使用、變量提升。
***********************************************************************************************正文******************************************************************************************************************************
三種將js導入到html代碼中的方法:行內腳本(不推薦)、內嵌腳本、外部腳本。
行內腳本:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>行內腳本</title> <!-- 該導入js的方式不推薦 --> </head> <body onload="alert=()"> </body> </html>
內嵌腳本
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>內嵌腳本</title> <script type="text/javascript"> alert('我是head腳本'); </script> </head> <body> <script type="text/javascript"> alert('我是body腳本'); </script> </body> </html>
外部腳本
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>外部腳本</title> <script type="text/javascript" src="js/new_file.js"> </script> </head> <body> </body> </html>
alert('我是外部腳本');
二、js書寫規范
js的書寫規范和java差不多的。
* js區分大小寫
* 關鍵字(保留字)若是大小寫書寫不同,瀏覽器控制台會報錯。
* var可以聲明所有的變量的類型
* 代碼行需要以分號結尾(不是必須的,為了防止系統加錯分號,還是加上分號比較好)、
* 所有的符號必須使用英文下的
* js可以用注釋代碼
* 單行注釋:/
* 多行注釋:/**/
三、變量的基本使用
js和java的變量聲明賦值使用都是差不多一樣的,有些不同的是js的聲明變量類型只需要用var,而java需要int、double之類的;js的同一變量名可以賦不同類型的值,而java不可以java的變量具有唯一性。
//變量聲明 /** * 語法: * 1、var 變量名;變量名=初始值; * 若變量名沒有賦初始值時,consol.log(money),會輸出undefined(默認值); * 2、var 變量名 =初始值 ; * var可以去掉(不推薦)[使用嚴格模式時,必須要加var] */
變量名命名規范
* 組成:字母、數字、下划線、$,首字符不可以是數字(和Java命名規范相同)
* 變量名命名要有意義,方便后期;
* 不能使用關鍵字(保留字)
* 命名方法:
* canel:駝峰命名法:首個單詞的首字母為小寫,其他單詞首字母為大寫,firstName,
* pascal:帕斯卡命名法:每個單詞的首字母都是大寫,FirstName;
//變量賦值 /**
* 語法:
* 可以在變量聲明時賦值,(var 變量名 =初始值 ;) * js中同一變量名可以賦不同類型的值。 */
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>變量的基本使用</title> </head> <body> <script type="text/javascript"> //變量聲明 /** * 語法: * 1、var 變量名;變量名=初始值; * 若變量名沒有賦初始值時,consol.log(money),會輸出undefined(默認值); * 2、var 變量名 =初始值 ; * var可以去掉(不推薦)[使用嚴格模式時,必須要加var] */ var money; /** * 變量名命名規范 * 組成:字母、數字、下划線、$,首字符不可以是數字(和Java命名規范相同) * 變量名命名要有意義,方便后期; * 不能使用關鍵字(保留字) * 命名方法: * canel:駝峰命名法:首個單詞的首字母為小寫,其他單詞首字母為大寫,firstName, * pascal:帕斯卡命名法:每個單詞的首字母都是大寫,FirstName; */ //變量賦值 /** * 語法: * 可以在變量聲明時賦值,(var 變量名 =初始值 ;) * js中同一變量名可以賦不同類型的值。 */ money=10000; //變量計算 money=money+money*0.04; //變量使用 console.log(money); </script> </body> </html>
四、變量提升
變量提升:編譯器在編譯js腳本時,把所有變量提升到腳本 的最上面。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>變量提升</title> </head> <body> <script type="text/javascript"> /** * 當單獨運行console.log(s)時程序會報錯; * 在console.log(s)下面對s進行聲明變量並賦初值,再次輸出s; * 在控制台中,第一次輸出s為默認值(undefined),第二次輸出s為:“我只是一個s”; * 這樣就進行了變量提升。 * 變量提升:編譯器在解釋js腳本時,會把所有的變量全部提升到腳本的最上面 */ console.log(s); var s = '我只是一個s'; console.log(s); /** * 變量提升相當於: */ var s; console.log(s); s = '我只是一個s'; console.log(s); </script> </body> </html>
/** * 當單獨運行console.log(s)時程序會報錯; * 在console.log(s)下面對s進行聲明變量並賦初值,再次輸出s; * 在控制台中,第一次輸出s為默認值(undefined),第二次輸出s為:“我只是一個s”; * 這樣就進行了變量提升。 * 變量提升:編譯器在解釋js腳本時,會把所有的變量全部提升到腳本的最上面 */
五、一個便於理解js變量的一個小項目。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>js一個小項目</title> </head> <body> <script type="text/javascript"> //<!--js代碼執行從上往下執行--> /*功能實現 * 向銀行存入10000元,利息4%,存儲一年算本金和; */ //存入10000元 var money=10000; //計算本金和 money=money+money*0.04; //輸出結果 console.log('本金和'+money) </script> </body> </html>
