javascript每日必學之基礎入門
從今天開始,我將帶領新朋友們,從了解javascript開始,一步一步地進階到大神境界,別的不廢話,現(xiàn)在開始,我們就一點一點地從入門階段開始。
我們還是介紹一下javascript的身世,不然,大家會對javascript存在非常大的誤解,它的產(chǎn)生歷史,我們就過于多說,我也記不住,上學開始歷史也沒及過格
js與我們經(jīng)常用來開發(fā)后臺程序的java語言不是什么親戚,他們的使用范圍也是相差非常遠,js只是用在html,用來對document節(jié)點進行增刪改查,構(gòu)建與服務器通訊的一種解釋性語言而已,這只是最簡單的理解,后面我們來對javascript進行詳細深入的學習,好了,我們就從語法開始,雖然,我說了不再廢話,但是,我感覺我仍然還是這么啰嗦,好了,大家也不要介意,想修煉成大神的朋友們,也請忍耐一下我這習慣。
還得聲明一點,看此文章的人,默認是有HTML基礎的朋友如果連下面的代碼還不理解的人,就請先理解之后,再來修煉,獨門秘笈也不是一般人能夠修煉的,萬一走火入魔了呢,怎么辦?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title></title> </head> <body> <h1>javascript大神修煉記</h1> <div>………………</div> <script type="text/javascript"> function MyFun(){ …… } </script> </body> </html>
這樣的代碼,大家就應該很熟悉了吧,我還得說一點的就是,script標簽跟大家在課本上面看到的寫法不一樣,我是寫在body標簽里面,而且還是寫在body標簽最后面,這是因為網(wǎng)頁的加載順序,是從上往下,按節(jié)點渲染,資源也是從上往下,逐個加載,至于資源響應速度,就與服務器和當前的訪問情況而論了,這是題外話了。頁面從上向往下逐個渲染到script標簽時候,就開始解析javascript代碼,如果javascript代碼存在對document節(jié)點有操作的情況,那么,它才能正確地得到節(jié)點對象,不然,就會存在代碼執(zhí)行出錯的風險。所以我們的script標簽就沒有寫在head標簽里面。
我們再來看一下語法,我們先用程序入門的方式進行講解,不然,直接操作document節(jié)點,某些朋友可能會接受不了,說到程序,大家后面還得接觸OOP,所以我們現(xiàn)在講 類,函數(shù),變量,如果你覺得陌生,不要怕,我曾經(jīng)也是這樣,但是,逐漸地我就能理解了,相信你也一樣,在javascript里面,類和函數(shù)有互相轉(zhuǎn)化的概念,所以還存在很多理解上問題,所以我決定,就從函數(shù)開始講,先不讓大家接觸類的概念
function WriteMyName(){ console.log("My name is MrDream"); } WriteMyName();
我這是用chrome瀏覽器,按一下F12,進入console面板,對代碼進行調(diào)試,大家也要習慣用這個瀏覽器,后面大家看我調(diào)試的多了,大家也會喜歡上這款瀏覽器,自然也會習慣用它來進行代碼調(diào)試。
前面我用function關鍵字聲明了一個函數(shù)WriteMyName,在方法體里面我只寫了一句簡單的console.log("My name is MrDream"),然后,直接用函數(shù)名加一個括號
WriteMyName(),這樣就可以執(zhí)行前面的函數(shù)體里面的內(nèi)容了,里面的內(nèi)容就是,打印一句話,打印的內(nèi)容是My name is MrDream,現(xiàn)在大家只要明白 console.log就是打印的意思就行了。
簡單小結(jié)一下函數(shù)體聲明語法 function 函數(shù)名(){函數(shù)體}
下面我們再來看一下,帶參數(shù)的函數(shù)
function WriteMyName(_your_name){ console.log(_your_name); } WriteMyName("My name is MrDream");
現(xiàn)在聲明的函數(shù)跟前面的函數(shù)區(qū)別就是,打印的內(nèi)容是用參數(shù)形式進行傳遞,那么帶的好處就是,我們之前調(diào)用WriteMyName()的時候,只是打印里面固定的內(nèi)容,然而現(xiàn)在,我們就可以這樣寫WriteMyName("馬大哈"),一對雙引號里面寫入任意一個名字,我們就可以打印出來了,是不是更方便了啊,我們再來看一下
靈活性就比之前的高多了,我們可以給函數(shù)體傳遞任意的字符串名字了,大家記住了,字符串,一定要帶上外面的一對引號,不然,會出錯,目前的你還不能理解,這是為什么,接下來,我們會繼續(xù)講變量的聲明,首先,我們得理解,變量是什么,變量的作用
var five = 5; var six = 6; function add(){ console.log(five+six); }
我們同樣是使用函數(shù)名+括號進行函數(shù)調(diào)用 add(),我們來看一下效果
函數(shù)體里面仍然是一句打印語句,打印的結(jié)果是11,5+6=11,沒有錯吧,如果我們要做其他值的加法,怎么辦呢?是不是要修改變量呢,對了,前面的var就是用來聲明變量的關鍵字,我們聲明了一個five和一個six,并且給他們賦值,然后,打印這兩個變量相加。
是不是覺得我們每次想打印的時候,都要修改函數(shù)體里面的變量,這樣就很麻煩了,那們我們來試一個傳遞參數(shù)的函數(shù)
var five = 5; var six = 6; function add(num1,num2){ console.log(num1+num2); } add(five,six);
我們在函數(shù)num1,num2處的位置分別傳入了變量five,six同樣打印出來正確的結(jié)果,這樣,我們就可以方便地傳入其他的值了
現(xiàn)在看一下,我們可以傳入變量,也可以傳入數(shù)字,正負均可,如果需要使用不固定的值在函數(shù)體進行計算的時候,我們就需要把這個函數(shù)寫在帶參數(shù)的函數(shù)。
總結(jié)一下,我們今天學會了什么?
第一,javascript是用來干什么的
第二,javsscript代碼放在頁面的什么位置最合適
第三,變量的聲明,用什么關鍵字
第四,我們學會了函數(shù)的聲明(帶參數(shù),不帶參數(shù),帶參數(shù)的原因),用什么關鍵字
哈哈 離大神又更近了一步,希望大家再接再厲,堅持下去,一定會有所收獲。
相關文章
用js實現(xiàn)層隨著內(nèi)容大小動態(tài)漸變改變 推薦
以前做谷歌的小工具時,api里提供了一個很有用的函數(shù),那就是在程序運行時可以使層動態(tài)隨內(nèi)容大小而變化,而且是平滑變換,在一些jquery的lightbox里也普遍有這種效果,看起來很酷的樣子。2009-12-12JavaScript?中如何攔截全局?Fetch?API?的請求和響應問題
在本文中,我們介紹了什么是 JavaScript 攔截器,學習了如何通過給 Fetch API 使用猴子補丁和使用 fetch-intercept 庫來創(chuàng)建攔截器,對js攔截全局Fetch?API的請求和響應知識感興趣的朋友跟隨小編一起看看吧2023-01-01JS實現(xiàn)六邊形3D拖拽翻轉(zhuǎn)效果的方法
這篇文章給大家分享一個利用javascript實現(xiàn)3D六邊形拖拽翻轉(zhuǎn)的效果實例,實現(xiàn)后的效果很贊,對大家的學習Javascript具有一定的參考借鑒價值,有需要的朋友們一起去來看看吧。2016-09-09javascript中使用replaceAll()函數(shù)實現(xiàn)字符替換的方法
第一次發(fā)現(xiàn)JavaScript中replace()?方法如果直接用str.replace("-","!")?只會替換第一個匹配的字符.2010-12-12類似php的js數(shù)組的in_array函數(shù)自定義方法
PHP的數(shù)組函數(shù)in_array()非常方便,下面就為大家介紹下自定義類似php的js數(shù)組的in_array函數(shù),具體實現(xiàn)方法如下,感興趣的朋友可以參考下2013-12-12