佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1173|回复: 0

JAVASCRIPT教學課程 (入門篇) 12個章節 - 由淺入深學習Javascript

[复制链接]
发表于 4-10-2021 07:44 PM | 显示全部楼层 |阅读模式
本帖最后由 LindaChan984 于 26-10-2021 03:21 PM 编辑

直至2021年的今天,Javascript其實已經是無所不能。
除了可以製作網站的前端開發,它還可以拿來做後台,例如:nodejs、app、react、vue、ionic。
在這篇「Javascript教學課程 (入門篇)」,我分開了12個章節,讓你由淺入深學習Javascript,包括:
  • Javascript 基本概念
  • 變數 (Variable)
  • 函數 (Function)
  • Logic: If...else
  • Logic: while
  • Logic: For loop
  • Array
  • Object
  • Callback Function
  • Redirection
  • 處理String
  • Debug
準備好了嗎?我們開始吧!
第1章Javascript 基本概念
[color=var(--color-white, white)]
當大家學習了HTML及CSS的語言後,現在終於來到Frontend最後一個要學習的語言,就是Javascript。
直至2021年的今天,Javascript其實已經是無所不能。
除了可以製作網站的前端開發,它還可以年來做後台,
例如:node js、app、react、angular、ionic。
如果大家想學習好Javascript,練習好基本功,是非常重要!
今天,我會與大家由淺入深,一起學習Javascript的Programming。
準備好了?我們開始吧!





Javascript 基本概念
第一課要了解的,就是什麼是Javascript,其實Javascript是一種很厲害的語言。
因為無論你需要製作的是frontend、backend、app還是website,基本上是甚麼都能做得到。
其實之前大家學習的html及css,都不是真的programing language,而Javascript才是真正的編程語言。
*如果你還不會HTML, 請先學習: [color=var(--color-primary, #2a6df4)]HTML教學課程 (入門篇)

首先,我們一起在桌面開一個「javascript」的文件夾,然後打開visual studio code軟件。

在visual studio code按 File,選擇Open。

然後選擇桌面「javascript」的文件夾,按打開 / Open。

在左手方位置,按右鍵開一個New File,

文件名稱可以輸入「index」,記得文件的名稱為index.html。
我們首先輸入一個script Tag,在這個tag裡面所運行的語法,
不再是html語法,而是javascript語法。

對於每一個第一次學習javascript的朋友們,第一句輸入的句子是:
alert('Hello World!');


儲蓄後,用Chrome打開它,來運行這句源碼。
如果你運行成功,應該會像上圖般,
彈了一個alert box視窗,寫著「Hello World!」。
記得每寫完一個javascript句子,都要加上一個「;」

如果你輸入了上圖般的3句alert box,

你就發現,視窗會一句一句地運行顯示。

如果有時候,你只想運作第一及第二行,第三行不想運作的話,
我們只需要在不想運行的句子前面,加上「//」便可以了。
「//」是代表Comment,
意思是程式不會運作,只是讓我們編程員去看而已。

這裡要注意的是,「//」只限用了一行的,
如果要用於幾行,便要輸入「/* 內文 */」。

這種輸入法,只要是/*與*/中間的內文,都不會運行的,無論是多少行都是一樣的。
如果有什麼code不想運行的,便可以用上以兩種輸入法來實行。




第2章變數 (Variable)[color=var(--color-white, white)]
了解完Javascript基本概念後,正式進入寫編程第一個要學的概念便是 - 變數 (Variable)。
變數的意思,就如小學代數般。
變數可以代表著很多類別,這些類別,我們稱之為data type。
準備好了?我們開始吧!





變數 (Variable)
了解完Javascript基本概念後,正式進入寫編程第一個要學的概念便是 - 變數 (Variable)。
我們先去看看這個有關Variable介紹的Youtube錄像,大概一分鐘左右:
看完錄像後,我們學到的第一個概念就是變數,變數意思就如小學代數般。
例如:
X + 1 = 5

那麼:
X是什麼?X就是4

小學代數就代表一個數字,可是在編程的世界裡,變數可以代表著很多類別,
這些類別,我們稱之為data type。
以下是一些常用的data type:
  • Integer (數字)
  • Float (有小數點的數字)
  • String (文字)
  • Boolean(TRUE/FALSE)
  • Array (數組)
  • Object (物件)
我會先從這3個簡單功能與大家分享,好讓大家簡單明瞭,
包括:Integer (數字)、Float (有小數點的數字)及String (文字)。




Integer (數字)
讓我們先學習Integer (數字)。

要定義一個變數,你可以使用var,或直接為一個變數指派一個數值:
我們一起輸入:
var x =1;

在javascript語法中,你是不需要定義這個變數是什麼data type的,
例如,它是string還是integer,
你只需要直接給它輸入一個value就可以。

我們一起在var下層輸入:
alert(x);

儲存後打開Chrome看看,是不是山現了「1」這個數字呢。
可能有朋友會問,為何不是出x?
因為x是一個變數,而你現在是alert這個變數,所以就會顯示出1。
關於變數的設定上,其實我們也可以去做一些算術。

我們一起在var下層輸入:

上圖大家看到:
輸入 x = 1,y = x + 3,
所以alert x 是出4。

從以上的例子可見,變數若是Integer (數字)的話,你是可以為它們進行運算的。
  • y = x + 10 (加)
  • y = x - 10 (減)
  • y = x * 10 (乘)
  • y = x / 10 (除)
  • y = x % 2 (餘數)





Float (有小數點的數字)
Integer (數字)是齊數的數字,如果有時候需要顯示小數點,我們就會利是用到Float。
Float (有小數點的數字)和Integer (數字)是一模一樣。只不過Float的數字是點數,而Integer的數字是整數。




String (文字)
數字以外,還有另一種變數是string (文字)。

若變數儲存的是String(文字)的話,你則需要利用一個單引號'或雙引號"包著它,例如:



從以上的例子可見,alert這個temp,我們做了一個變數為z,
上圖加了一個var temp,用了z + ‘內文’,這就是Combine string,意思是將兩條字串串連起來。
如上圖的' I am Jack' + ' he is COOL' ,
就會顯示出「I am Jack and he is COOL」。


如果我把alert的temp加入引號,無論是單引號或是雙引號,它就是一個字串。
所以它會顯示「temp」這個文字,而不是var temp的內容。

其實這裡還可以繼續輸入的,
例如在alert括號入面輸入「temp + and he is fine」。
所以它會顯示出:
I am Jack and he is COOL and he is fine

所以大家現在知道字串的用法了吧,以上這些功能,便是string的用法了。
在現階段,你先學習這3種Data Type。
其他的data type,如Array (數組)及Object (物件)等,
會在接下來的章節深入討論。




第3章函數 (Function)[color=var(--color-white, white)]
當我們在編程時,許多時都要重複去寫一些同樣的東西。
為了避免浪費時間,去寫同樣的東西,我們便可以使用函數 (Function)。
函數 (Function)用作把一段program包著,讓你日後可以重複使用。
今天,我會與大家由淺入深,一起學習函數 (Function)。
準備好了?我們開始吧!





函數 (Function)
函數 (Function)是另一個非常重要的編程概念。你可以先看看以下影片:
當我們在編程時,許多時都要重複去寫一些同樣的東西。為了避免浪費時間,去寫同樣的東西,我們便可以使用函數 (Function)。
函數 (Function)用作把一段program包著,讓你日後可以重複使用。

現在我們一起看看這個例子,例如我有一段code是這樣的:



如果以上兩段code會經常用到的,我們便可以使用Function來包著:
function alertx(){}



{}是叫做scope的bracket,意思記是在{}裡面的內容,define這一個function。
上文只是定義了這個function,如果用Chrome把網站打開,其實是什麼都沒有。

所以,如果要用這個function,你就需要call這個function,所以你需要輸入:
alertx();


同樣地,如果輸入三次「alertx();」,就會運行三次這個function。
這裡可以注意的是,當你看到define一個function,alertx括號。大家可以記住,只要一見到括號,就知道它就是function了。
你看上圖的alertx有括號,正正是代表著運行上層那行function。

如果大家有留意,alert()本身就是function這個功能,直接輸入便能使用。
除javascript本身設定的function外,我們也可以自行定義一些function。

另外在alert()後面,你會見到這個{}括號,這是非常常見的scope bracket來的。
{}是一個scope bracket,我們會用它去包著function的內容。
在scope內定義的variable,叫local variable。
意思是這些variable只能在這個scope內使用,在scope外並不可以取存這些variables。


比如{}內的alert(x),是不能顯得x出來的,因為圖中的alert(x)只能在local variable使用。

所以必須要外面定義,比如上圖的:
var y = 1;
這樣,才能alert到1出來。


Functions更可以接受parameter,例如輸入在:
alertx(x)



這時候,我們每次call這個functions,都可以定義這個x是什麼。
例如第一次alert是1,
第二次alert是3。
這是一個很重要的概念來,就是可以自行take parameter。
雖然大定都是同一個function,
但是當parameter不同,output出來的東西就會有所不同。

這些paramete是可以多過一個的,例如輸入一個逗號y,逗號z。
然後內層增加一個新的變數:
var temp = x * y + z -1;
內層alert(temp);
然後alertx(2,3,5);



再用Chrome把網站打開,就會顯示出10這個數字了。
這個就是function的厲害之處了,當你輸入了一些program後,就可以造一些parameter出來,
只要每一個call這個function,輸入不同的parameter,計算出來的東西就會不同。




Return
我們接著了解更多的function,而其中還有一樣很重要功能,就是叫return。
按以下例子,我們先輸入以下格式:


再用Chrome把網站打開,就會顯示出這樣的效果:

我們如果不在這裡alert,又能怎樣改動呢?

我們可以把alert del,然後需要輸入一條string,比如是輸入:
var temp =


然後在下層輸入:
return temp;

可能你會問,這個return到底是什麼輸入法來的?
return輸入法,原來是我pass了內裡一些東西入去,它最尾會return回一個variable。
比如我一call calAge這個function後,它就會return回一個variable出來的。
意思即是我們在外面,其實可以收回這個variable。

所以這裡我們要更改輸入:
var x = calAge(2019,1990);

因為現在calAge,是會return一個東西,
Return了temp這個東西,而temp就會被pass到x那裡。

接著輸入:
alert(x);

再用Chrome把網站打開,就會顯示出上圖的結果了。
再來輸入一次,內容是這樣的:


有時候,我們都可以在這個算式中再加入一些東西,

比如var x下層再輸入:
x = '***' + x;

結果就會得出:
***I was born at year1990. I am 29 years old.

以上就是return的輸入方法了!
要記得我們在使用這個function時,需要再設立一個新的變數(在以上例子就是temp),去儲存這個function return回來的數值。




第4章Logic: If...else[color=var(--color-white, white)]
正常的Program,是會一句一句的跟著去運行。
然而,在某些情況下,我們只想運行某一部份的Program。
在另一些情況下,又只運行另一部份的Program。
這時候,我們便要利用編程中的一個非常重要的概念,就是Condition。
最常用控制condition的方法,就是通過if...else來控制。
準備好了?我們開始吧!





Logic: If...else
來到下一個概念,就是condition,意思是正常的Program,會一句一句的跟著去運行。
然而,在某些情況下,我們只想運行某一部份的Program。
在另一些情況下,又只運行另一部份的Program。
這時候,我們便要利用編程中的一個非常重要的概念,就是Condition。
我們先看看這段影片:
我們最常用控制condition的方法,就是通過if...else來控制的。

我們一起輸入:
if (){ }

然後增加一個變數:
var x = 1;
If括號中輸入,x > 1
然後alert(' x is bigger than 1')




接著下層輸入:
else{alert(' x is smaller than 1')}



我們一起細看,整個內容到底是代表著什麼呢?
意思是:
x等於1,如果x大於1,就會行x是大於1的那段code。
如果不是,就會會行x是小於1的那段code。


所以當x=1時,結果就會是運行「else」那一段。

同樣地,我將x更改為等於5,結果就會是運行「if」那一段。

這裡,有一個重要要點要注意的,就是圖中x>1那個括號位置。
括號()中間代表condition,當condition符合成立時,便會運行接下來的Program。
在condition中,我們會用到一些Compare Expression。
以下是6種常用的Compare Expression:
  • == 等於
  • != 不等於
  • > 大過
  • < 細過
  • >= 大過或等於
  • <= 細過或等於

我們也可以建立更複雜的condition,例如輸入:
var y = 0;
if (x == 1 && y == 0){alert('condition1')}
else{alert('elsecondition')}



&&代表and。
表示兩個condition必須皆符合,整個condition才算符合。

所以當x=1與y=0都符合要求,就會得出「condition1」。

現在我更改y=10,y不再是等於0時,結果就會得出「elsecondition」。

接著我再把&&更改成||,結果又會變回「condition1」。
||代表or。
表示兩個condition,只要有一個符合,整個condition便會符合。
這裡溫馨提供一下,if括號內是不只是兩種,還可以不斷增加各類condition條件。




else if
除了if 和else外,我們也可以使用else if。
當if的condition不成立時,便會運行接下來的else if。
如果這次的condition也不成立,便會再運行接下來的else if,直到condition成立,或是運行else。

我們一起輸入:
Var x = 9;
else if (x > 8){alert('condition2')}



你會發現,if增加了一個新的condition是else if,
只要條件對if不成立,便會運行接下來的else if,
所有的else if不成立,便會運行接下來的else。

所以你會看到得出了「condition2」的結論。

現在我再輸入多一個else if,今次條件是x > 5,
而var x = 6,得出的結論就是「condition3」。
不過大家要注意的是,
else if在同一個比較語句中,可以使用很多次,但else就只能使用一次。
以上便是if、else if、else的基礎教學了,大家努力練習吧。

更多內容請細看:
JAVASCRIPT教學課程 (入門篇) 12個章節 - 由淺入深學習Javascript





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 24-4-2024 12:00 PM , Processed in 0.080637 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表