課堂javascript基礎(chǔ)一天_第1頁
課堂javascript基礎(chǔ)一天_第2頁
課堂javascript基礎(chǔ)一天_第3頁
課堂javascript基礎(chǔ)一天_第4頁
課堂javascript基礎(chǔ)一天_第5頁
已閱讀5頁,還剩104頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

JavaScript基礎(chǔ)第一天基礎(chǔ)語法理解變量是存儲數(shù)據(jù)的“容器”理解什么是數(shù)據(jù)并知道數(shù)據(jù)的分類知道JavaScript數(shù)據(jù)類型轉(zhuǎn)換的特征JavaScript介紹變量常量數(shù)據(jù)類型類型轉(zhuǎn)換實戰(zhàn)案例JavaScript介紹JavaScript是什么JavaScript書寫位置JavaScript的注釋JavaScript的結(jié)束符輸入和輸出語法字面量011.1

JavaScript是什么1.JavaScript(是什么?)是一種運行在客戶端(瀏覽器)的編程語言,實現(xiàn)人機交互效果。2.作用(做什么?)網(wǎng)頁特效(監(jiān)聽用戶的一些行為讓網(wǎng)頁作出對應(yīng)的反饋)表單驗證(針對表單數(shù)據(jù)的合法性進行判斷)數(shù)據(jù)交互(獲取后臺的數(shù)據(jù),渲染到前端)服務(wù)端編程(node.js)1.1

JavaScript是什么3.JavaScript的組成(有什么?)ECMAScript:

規(guī)定了js基礎(chǔ)語法核心知識。比如:變量、分支語句、循環(huán)語句、對象等等WebAPIs:DOM操作文檔,比如對頁面元素進行移動、大小、添加刪除等操作BOM操作瀏覽器,比如頁面彈窗,檢測窗口寬度、存儲數(shù)據(jù)到瀏覽器等等權(quán)威網(wǎng)站:MDNJavaScript權(quán)威網(wǎng)站:JavaScriptECMAScriptJavaScript語言基礎(chǔ)DOM頁面文檔對象模型BOM瀏覽器對象模型WebAPIsJavaScript是什么?JavaScript是一種運行在客戶端(瀏覽器)的編程語言JavaScript組成是什么?ECMAScript(基礎(chǔ)語法)、webAPIs(DOM、BOM)點擊切換按鈕的案例-體驗HTML+CSS+JS實現(xiàn)交互效果體驗-JavaScriptJavaScript介紹JavaScript是什么JavaScript書寫位置JavaScript的注釋JavaScript的結(jié)束符輸入和輸出語法字面量011.2

JavaScript書寫位置目標:知道如何向頁面添加JavaScriptCSS位置JavaScript行內(nèi)樣式表內(nèi)部樣式表外部樣式表行內(nèi)JavaScript內(nèi)部JavaScript外部JavaScript1.2

JavaScript書寫位置直接寫在html文件里,用script標簽包住規(guī)范:script標簽寫在</body>上面拓展:alert(‘你好,js’)

頁面彈出警告對話框1.內(nèi)部JavaScript我們將<script>放在HTML文件的底部附近的原因是瀏覽器會按照代碼在文件中的順序加載HTML。如果先加載的JavaScript期望修改其下方的HTML,那么它可能由于HTML尚未被加載而失效。因此,將JavaScript代碼放在HTML頁面的底部附近通常是最好的策略。注意事項1.2

JavaScript書寫位置代碼寫在以.js結(jié)尾的文件里語法:通過script標簽,引入到html頁面中。2.外部JavaScript1.script標簽中間無需寫代碼,否則會被忽略!2.外部JavaScript會使代碼更加有序,更易于復(fù)用,且沒有了腳本的混合,HTML也會更加易讀,因此這是個好的習慣。注意事項1.2

JavaScript書寫位置代碼寫在標簽內(nèi)部語法:注意:此處作為了解即可,但是后面vue框架會用這種模式3.內(nèi)聯(lián)JavaScriptJavaScript三種書寫位置?內(nèi)部

外部行內(nèi)注意事項:書寫的位置盡量寫到文檔末尾</body>前面外部js標簽中間不要寫代碼,否則會被忽略頁面彈框課堂練習需求:請用外部和內(nèi)部兩種JavaScript書寫方式,頁面彈出:努力,奮斗時間:5分鐘舉例說明頁面彈窗:alert(‘xxxx’)JavaScript介紹JavaScript是什么JavaScript書寫位置JavaScript的注釋JavaScript的結(jié)束符輸入和輸出語法字面量011.3

JavaScript注釋目標:會使用兩種JavaScript注釋方法單行注釋符號://作用://右邊這一行的代碼會被忽略快捷鍵:ctrl+/塊注釋符號:/**/作用:在/*和*/之間的所有內(nèi)容都會被忽略快捷鍵:shift+alt+AJavaScript介紹JavaScript是什么JavaScript書寫位置JavaScript的注釋JavaScript的結(jié)束符輸入和輸出語法字面量011.4

JavaScript結(jié)束符目標:了解JavaScript結(jié)束符結(jié)束符作用:使用英文的;代表語句結(jié)束實際情況:實際開發(fā)中,可寫可不寫,瀏覽器(JavaScript引擎)可以自動推斷語句的結(jié)束位置現(xiàn)狀:在實際開發(fā)中,越來越多的人主張,書寫JavaScript代碼時省略結(jié)束符約定:為了風格統(tǒng)一,結(jié)束符要么每句都寫,要么每句都不寫(按照團隊要求.)JavaScript注釋有那兩種方式?單行注釋//多行注釋/**/JavaScript結(jié)束符注意點結(jié)束符是?分號;結(jié)束符可以省略嗎?Yes但為了風格統(tǒng)一,結(jié)束符要么每句都寫,要么每句都不寫小結(jié)JavaScript介紹JavaScript是什么JavaScript書寫位置JavaScript的注釋JavaScript的結(jié)束符輸入和輸出語法字面量011.5

JavaScript輸入輸出語法目標:能寫出常見JavaScript輸入輸出語法什么是語法:人和計算機打交道的規(guī)則約定我們要按照這個規(guī)則去寫比如:你吃了嗎?我們程序員需要操控計算機,需要計算機能看懂1.5

JavaScript輸入輸出語法目標:能寫出常見JavaScript輸入輸出語法輸出和輸入也可理解為人和計算機的交互,用戶通過鍵盤、鼠標等向計算機輸入信息,計算機處理后再展示結(jié)果給用戶,這便是一次輸入和輸出的過程。輸出語法:語法1:作用:向body內(nèi)輸出內(nèi)容注意:如果輸出的內(nèi)容寫的是標簽,也會被解析成網(wǎng)頁元素語法2:

作用:頁面彈出警告對話框語法3:作用:控制臺輸出語法,程序員調(diào)試使用1.5

JavaScript輸入輸出語法2.輸入語法:語法:作用:顯示一個對話框,對話框中包含一條文字信息,用來提示用戶輸入文字展示:輸入和輸入練習需求:時間:5分鐘瀏覽器中彈出對話框:你好JS~頁面中打印輸出:JavaScript我來了!頁面控制臺輸出:它~會魔法吧~1.5

JavaScript輸入輸出語法JavaScript代碼執(zhí)行順序:按HTML文檔流順序執(zhí)行JavaScript代碼alert()和prompt()它們會跳過頁面渲染先被執(zhí)行(目前作為了解,后期講解詳細執(zhí)行過程)JavaScript介紹JavaScript是什么JavaScript書寫位置JavaScript的注釋JavaScript的結(jié)束符輸入和輸出語法字面量011.6字面量目標:能說出什么是字面量在計算機科學中,字面量(literal)是在計算機中描述事/物比如:我們工資是:1000此時1000就是數(shù)字字面量'黑馬程序員'字符串字面量還有接下來我們學的[]數(shù)組字面量{}對象字面量

等等1.JavaScript是什么?JavaScript是一門編程語言,可以實現(xiàn)很多的網(wǎng)頁交互效果。2.JavaScript書寫位置?內(nèi)部JavaScript內(nèi)部JavaScript

–寫到</body>標簽上方外部JavaScript-但是<script>標簽不要寫內(nèi)容,否則會被忽略3.JavaScript的注釋?單行注釋//多行注釋/**/4.JavaScript的結(jié)束符?分號;可以加也可以不加,可以按照團隊約定5.JavaScript輸入輸出語句?輸入:prompt()輸出:alert()document.write()console.log()JavaScript介紹變量常量數(shù)據(jù)類型類型轉(zhuǎn)換實戰(zhàn)案例變量變量是什么變量基本使用☆變量的本質(zhì)變量命名規(guī)則與規(guī)范022.1變量是什么?問題1:用戶輸入的數(shù)據(jù)我們?nèi)绾未鎯ζ饋??答?:變量2.1變量是什么?目標:理解變量是計算機存儲數(shù)據(jù)的“容器”變量:白話:變量就是一個裝東西的盒子。通俗:變量是計算機中用來存儲數(shù)據(jù)的“容器”,它可以讓計算機變得有記憶。注意:變量不是數(shù)據(jù)本身,它們僅僅是一個用于存儲數(shù)值的容器??梢岳斫鉃槭且粋€個用來裝東西的紙箱子。數(shù)據(jù)變量是怎么理解?計算機中用來存儲數(shù)據(jù)的“容器”,簡單理解是一個個的盒子。變量有什么作用呢?用來存放數(shù)據(jù)的。注意變量指的是容器而不是數(shù)據(jù)。你還能想到那些生活中的變量?HTML標簽教室宿舍…變量變量是什么變量基本使用☆變量的本質(zhì)變量命名規(guī)則與規(guī)范022.2變量的基本使用目標:能夠聲明一個變量并完成賦值操作變量的聲明變量的賦值2.2變量的基本使用1.聲明變量:要想使用變量,首先需要創(chuàng)建變量(也稱為聲明變量或者定義變量)語法:聲明變量有兩部分構(gòu)成:聲明關(guān)鍵字、變量名(標識)let即關(guān)鍵字(let:允許、許可、讓、要),所謂關(guān)鍵字是系統(tǒng)提供的專門用來聲明(定義)變量的詞語

舉例:我們聲明了一個age變量age即變量的名稱,也叫標識符2.2變量的基本使用2.變量賦值:定義了一個變量后,你就能夠初始化它(賦值)。在變量名之后跟上一個“=”,然后是數(shù)值。注意:是通過變量名來獲得變量里面的數(shù)據(jù)變量字面量2.2變量的基本使用2.變量賦值:簡單點,也可以聲明變量的時候直接完成賦值操作,這種操作也稱為變量初始化。變量用什么關(guān)鍵字來聲明?let變量通過什么符號來賦值?

=

這個符號我們也稱為賦值運算符開發(fā)中我們經(jīng)常聲明的同時可以直接賦值?課堂變量練習需求:1.聲明一個變量,用于存放用戶購買的商品數(shù)量(num)

為20

件2.聲明一個變量,用于存放用戶的姓名(uname)

為’張三’3.依次控制臺打印輸出兩個變量2.2變量的基本使用目標:掌握變量的更新以及了解同時聲明多個變量的寫法3.更新變量:變量賦值后,還可以通過簡單地給它一個不同的值來更新它。注意:let不允許多次聲明一個變量。2.2變量的基本使用4.聲明多個變量:變量賦值后,還可以通過簡單地給它一個不同的值來更新它。語法:多個變量中間用逗號隔開。說明:看上去代碼長度更短,但并不推薦這樣。為了更好的可讀性,請一行只聲明一個變量。變量賦值之后如何更新新值?直接給它一個不同的值來更新它我們提倡同時聲明多個不同的變量嗎?

不提倡,可讀性不好1.變量案例-彈出姓名需求:瀏覽器中彈出對話框:請輸入姓名,頁面中輸出:剛才輸入的姓名分析:①:輸入:用戶輸入框:②:內(nèi)部處理:保存數(shù)據(jù)

③:輸出:頁面打印prompt()document.write()2.變量案例-交換變量的值需求:有2個變量:num1里面放的是10,num2里面放的是20最后變?yōu)閚um1里面放的是20,num2里面放的是10目的:練習變量的使用為了后面冒泡排序做準備2.變量案例-交換變量的值分析:1.核心思路:使用一個臨時變量用來做中間存儲1020num1num2臨時變量步驟:1.聲明一個臨時變量temp2.把num1的值賦值給temp3.把num2的值賦值給num12.變量案例-交換變量的值分析:1.核心思路:使用一個臨時變量用來做中間存儲1020num1臨時變量num2步驟:1.聲明一個臨時變量temp2.把num1的值賦值給temp3.把num2的值賦值給num14.把temp的值給num2沒了~~~~臨時變量不用自動銷毀變量變量是什么變量基本使用☆變量的本質(zhì)變量命名規(guī)則與規(guī)范022.3變量的本質(zhì)目標:能夠說出變量的本質(zhì)是什么內(nèi)存:計算機中存儲數(shù)據(jù)的地方,相當于一個空間變量本質(zhì):是程序在內(nèi)存中申請的一塊用來存放數(shù)據(jù)的小空間

內(nèi)存18電腦變量變量是什么變量基本使用☆變量的本質(zhì)變量命名規(guī)則與規(guī)范022.4變量命名規(guī)則與規(guī)范目標:能寫出符合規(guī)范的變量名規(guī)則:必須遵守,不遵守報錯(法律層面)規(guī)范:建議,不遵守不會報錯,但不符合業(yè)內(nèi)通識(道德層面)1.規(guī)則:不能用關(guān)鍵字關(guān)鍵字:有特殊含義的字符,JavaScript內(nèi)置的一些英語詞匯。例如:let、var、if、for等只能用下劃線、字母、數(shù)字、$組成,且數(shù)字不能開頭字母嚴格區(qū)分大小寫,如Age和age是不同的變量2.規(guī)范:起名要有意義遵守小駝峰命名法第一個單詞首字母小寫,后面每個單詞首字母大寫。例:userName2.4變量命名規(guī)則與規(guī)范以下哪些是合法的變量名?2.4變量命名規(guī)則與規(guī)范以下哪些是合法的變量名?變量練習-輸出用戶信息需求:讓用戶輸入自己的名字、年齡、性別,再輸出到網(wǎng)頁分析:①:彈出輸入框(prompt):請輸入您的姓名(uname):用變量保存起來。②:彈出輸入框(prompt):請輸入您的年齡(age):用變量保存起來。③:彈出輸入框(prompt):請輸入您的性別(gender):用變量保存起來。④:頁面分別輸出(document.write)剛才的3個變量。二.變量拓展-let和var的區(qū)別let和var區(qū)別:在較舊的JavaScript,使用關(guān)鍵字var來聲明變量

,而不是let。var現(xiàn)在開發(fā)中一般不再使用它,只是我們可能再老版程序中看到它。let為了解決var的一些問題。var聲明:可以先使用在聲明(不合理)var聲明過的變量可以重復(fù)聲明(不合理)比如變量提升、全局變量、沒有塊級作用域等等結(jié)論:var就是個bug,別迷戀它了,以后聲明變量我們統(tǒng)一使用let變量一次只能存幾個值?如果我想保存一個班里5個人的姓名怎么辦?數(shù)組(Array)——一種將一組數(shù)據(jù)存儲在單個變量名下的優(yōu)雅方式二.變量拓展-數(shù)組變量數(shù)組字面量目標:能夠聲明數(shù)組并且能夠獲取里面的數(shù)據(jù)1.聲明語法1.1數(shù)組的基本使用例數(shù)組是按順序保存,所以每個數(shù)據(jù)都有自己的編號計算機中的編號從0開始,所以小明的編號為0,小剛編號為1,以此類推在數(shù)組中,數(shù)據(jù)的編號也叫索引或下標數(shù)組可以存儲任意類型的數(shù)據(jù)1.1數(shù)組的基本使用2.取值語法例通過下標取數(shù)據(jù)取出來是什么類型的,就根據(jù)這種類型特點來訪問數(shù)組取值案例需求:定義一個數(shù)組,里面存放星期一、星期二……直到星期日(共7天),在控制臺輸出:星期日3.一些術(shù)語:元素:數(shù)組中保存的每個數(shù)據(jù)都叫數(shù)組元素下標:數(shù)組中數(shù)據(jù)的編號長度:數(shù)組中數(shù)據(jù)的個數(shù),通過數(shù)組的length屬性獲得1.1數(shù)組的基本使用1.使用數(shù)組有什么好處?數(shù)組可以保存多個數(shù)據(jù)2.數(shù)組字面量用什么表示?[]中括號3.請說出下面數(shù)組中‘小米’的下標是多少?如何取得這個數(shù)據(jù)?下標是4獲取的寫法是names[4]JavaScript介紹變量常量數(shù)據(jù)類型類型轉(zhuǎn)換實戰(zhàn)案例常量033.常量的基本使用概念:使用const聲明的變量稱為“常量”。使用場景:當某個變量永遠不會改變的時候,就可以使用const來聲明,而不是let。命名規(guī)范:和變量一致常量使用:注意:常量不允許重新賦值,聲明的時候必須賦值(初始化)小技巧:不需要重新賦值的數(shù)據(jù)使用const

let—現(xiàn)在實際開發(fā)變量聲明方式。var—以前的聲明變量的方式,會有很多問題。const—類似于let,但是變量的值無法被修改。

JavaScript介紹變量常量數(shù)據(jù)類型類型轉(zhuǎn)換實戰(zhàn)案例數(shù)據(jù)類型數(shù)據(jù)類型☆檢測數(shù)據(jù)類型044.數(shù)據(jù)類型目標:能說出JS中基本數(shù)據(jù)類型有哪些計算機世界中的萬事萬物都是數(shù)據(jù)。計算機程序可以處理大量的數(shù)據(jù),為什么要給數(shù)據(jù)分類?1.更加充分和高效的利用內(nèi)存2.也更加方便程序員的使用數(shù)據(jù)比如:4.數(shù)據(jù)類型JS數(shù)據(jù)類型整體分為兩大類:基本數(shù)據(jù)類型引用數(shù)據(jù)類型基本數(shù)據(jù)類型引用數(shù)據(jù)類型number數(shù)字型string字符串型boolean布爾型undefined未定義型null空類型object對象4.數(shù)據(jù)類型JS數(shù)據(jù)類型整體分為兩大類:基本數(shù)據(jù)類型引用數(shù)據(jù)類型基本數(shù)據(jù)類型number數(shù)字型string字符串型boolean布爾型undefined未定義型null空類型4.1數(shù)據(jù)類型–數(shù)字類型(Number)即我們數(shù)學中學習到的數(shù)字,可以是整數(shù)、小數(shù)、正數(shù)、負數(shù)。JavaScript中的正數(shù)、負數(shù)、小數(shù)等統(tǒng)一稱為數(shù)字類型。JS是弱數(shù)據(jù)類型,變量到底屬于那種類型,只有賦值之后,我們才能確認Java是強數(shù)據(jù)類型例如inta=3必須是整數(shù)注意事項4.1數(shù)據(jù)類型–數(shù)字類型(Number)數(shù)字可以有很多操作,比如,乘法*、除法/、加法+、減法-等等,所以經(jīng)常和算術(shù)運算符一起。數(shù)學運算符也叫算術(shù)運算符,主要包括加、減、乘、除、取余(求模)。+:求和-:求差*:求積/:求商%:取模(取余數(shù))開發(fā)中經(jīng)常作為某個數(shù)字是否被整除目標:能說出JavaScript算術(shù)運算符執(zhí)行的優(yōu)先級順序同時使用多個運算符編寫程序時,會按著某種順序先后執(zhí)行,我們稱為優(yōu)先級。JavaScript中優(yōu)先級越高越先被執(zhí)行,優(yōu)先級相同時以書從左向右執(zhí)行。乘、除、取余優(yōu)先級相同加、減優(yōu)先級相同乘、除、取余優(yōu)先級大于加、減使用()可以提升優(yōu)先級總結(jié):先乘除后加減,有括號先算括號里面的~~~提問:算術(shù)運算符有那幾個常見的?+-*/%算術(shù)運算符優(yōu)先級怎么記憶?先乘除取余,后加減,有小括號先算小括號里面的取余運算符開發(fā)中的使用場景是?來判斷某個數(shù)字是否能被整除計算圓的面積需求:對話框中輸入圓的半徑,算出圓的面積并顯示到頁面分析:①:面積的數(shù)學公式:π*r2②:轉(zhuǎn)換為JavaScript寫法:變量

*r*r4.1數(shù)據(jù)類型–數(shù)字類型(Number)NaN代表一個計算錯誤。它是一個不正確的或者一個未定義的數(shù)學操作所得到的結(jié)果NaN是粘性的。任何對NaN的操作都會返回NaN4.1數(shù)據(jù)類型–字符串類型(string)通過單引號('')、雙引號("")或反引號(`)包裹的數(shù)據(jù)都叫字符串,單引號和雙引號沒有本質(zhì)上的區(qū)別,推薦使用單引號。注意事項:1.無論單引號或是雙引號必須成對使用2.單引號/雙引號可以互相嵌套,但是不以自已嵌套自已(口訣:外雙內(nèi)單,或者外單內(nèi)雙)3.必要時可以使用轉(zhuǎn)義符\,輸出單引號或雙引號4.1數(shù)據(jù)類型–字符串類型(string)字符串拼接:場景:+運算符可以實現(xiàn)字符串的拼接??谠E:數(shù)字相加,字符相連模板字符串使用場景拼接字符串和變量在沒有它之前,要拼接變量比較麻煩語法``(反引號)在英文輸入模式下按鍵盤的tab鍵上方那個鍵(1左邊那個鍵)內(nèi)容拼接變量時,用${}包住變量1.JavaScript中什么樣數(shù)據(jù)我們知道是字符串類型?只要用單引號、雙引號、反引號包含起來的就是字符串類型2.字符串拼接比較麻煩,我們可以使用什么來解決這個問題?模板字符串,可以讓我們拼接字符串更簡便3.模板字符串使用注意事項:用什么符號包含數(shù)據(jù)?反引號用什么來使用變量?${變量名}頁面輸出用戶信息案例需求:頁面彈出對話框,輸入名字和年齡,頁面顯示:大家好,我叫xxx,今年xx歲了4.1數(shù)據(jù)類型–布爾類型(boolean)表示肯定或否定時在計算機中對應(yīng)的是布爾類型數(shù)據(jù)。它有兩個固定的值true和false,表示肯定的數(shù)據(jù)用true(真),表示否定的數(shù)據(jù)用false(假)。4.1數(shù)據(jù)類型–未定義類型(undefined)未定義是比較特殊的類型,只有一個值undefined。什么情況出現(xiàn)未定義類型?只聲明變量,不賦值的情況下,變量的默認值為undefined,一般很少【直接】為某個變量賦值為undefined。工作中的使用場景:我們開發(fā)中經(jīng)常聲明一個變量,等待傳送過來的數(shù)據(jù)。如果我們不知道這個數(shù)據(jù)是否傳遞過來,此時我們可以通過檢測這個變量是不是undefined,就判斷用戶是否有數(shù)據(jù)傳遞過來。4.1數(shù)據(jù)類型–null(空類型)JavaScript中的null僅僅是一個代表“無”、“空”或“值未知”的特殊值null和undefined區(qū)別:undefined表示沒有賦值null表示賦值了,但是內(nèi)容為空null開發(fā)中的使用場景:官方解釋:把null作為尚未創(chuàng)建的對象大白話:將來有個變量里面存放的是一個對象,但是對象還沒創(chuàng)建好,可以先給個null1.布爾數(shù)據(jù)類型有幾個值?true和false2.什么時候出現(xiàn)未定義數(shù)據(jù)類型?以后開發(fā)場景是?定義變量未給值就是undefined如果檢測變量是undefined就說明沒有值傳遞過來3.null是什么類型?開發(fā)場景是?空類型如果一個變量里面確定存放的是對象,如果還沒準備好對象,可以放個null數(shù)據(jù)類型數(shù)據(jù)類型☆檢測數(shù)據(jù)類型044.2控制臺輸出語句和檢測數(shù)據(jù)類型控制臺輸出語句:控制臺語句經(jīng)常用于測試結(jié)果來使用。

可以看出數(shù)字型和布爾型顏色為藍色,字符串和undefined顏色為灰色3.2控制臺輸出語句和檢測數(shù)據(jù)類型2.通過typeof關(guān)鍵字獲取數(shù)據(jù)類型typeof運算符可以返回被檢測的數(shù)據(jù)類型。它支持兩種語法形式:作為運算符:typeofx(常用的寫法)函數(shù)形式:typeof(x)換言之,有括號和沒有括號,得到的結(jié)果是一樣的,所以我們直接使用運算符的寫法。JavaScript介紹變量常量數(shù)據(jù)類型類型轉(zhuǎn)換實戰(zhàn)案例類型轉(zhuǎn)換為什么要類型轉(zhuǎn)換隱式轉(zhuǎn)換顯式轉(zhuǎn)換055.1為什么需要類型轉(zhuǎn)換JavaScript是弱數(shù)據(jù)類型:JavaScript也不知道變量到底屬于那種數(shù)據(jù)類型,只有賦值了才清楚。坑:使用表單、prompt獲取過來的數(shù)據(jù)默認是字符串類型的,此時就不能直接簡單的進行加法運算。此時需要轉(zhuǎn)換變量的數(shù)據(jù)類型。通俗來說,就是把一種數(shù)據(jù)類型的變量轉(zhuǎn)換成我們需要的數(shù)據(jù)類型。類型轉(zhuǎn)換為什么要類型轉(zhuǎn)換隱式轉(zhuǎn)換顯式轉(zhuǎn)換045.2隱式轉(zhuǎn)換某些運算符被執(zhí)行時,系統(tǒng)內(nèi)部自動將數(shù)據(jù)類型進行轉(zhuǎn)換,這種轉(zhuǎn)換稱為隱式轉(zhuǎn)換。規(guī)則:+號兩邊只要有一個是字符串,都會把另外一個轉(zhuǎn)成字符串除了+以外的算術(shù)運算符比如-

*/等都會把數(shù)據(jù)轉(zhuǎn)成數(shù)字類型缺點:轉(zhuǎn)換類型不明確,靠經(jīng)驗才能總結(jié)小技巧:+號作為正號解析可以轉(zhuǎn)換成數(shù)字型任何數(shù)據(jù)和字符串相加結(jié)果都是字符串5.2顯式轉(zhuǎn)換編寫程序時過度依靠系統(tǒng)內(nèi)部的隱式轉(zhuǎn)換是不嚴禁的,因為隱式轉(zhuǎn)換規(guī)律并不清晰,大多是靠經(jīng)驗總結(jié)的規(guī)律。為了避免因隱式轉(zhuǎn)換帶來的問題,通常根邏輯需要對數(shù)據(jù)進行顯示轉(zhuǎn)換。概念:自己寫代碼告訴系統(tǒng)該轉(zhuǎn)成什么類型轉(zhuǎn)換為數(shù)字型Number(數(shù)據(jù))轉(zhuǎn)成數(shù)字類型如果字符串內(nèi)容里有非數(shù)字,轉(zhuǎn)換失敗時結(jié)果為NaN(NotaNumber)即不是一個數(shù)字NaN也是number類型的數(shù)據(jù),代表非數(shù)字parseInt(數(shù)據(jù))只保留整數(shù)parseFloat(數(shù)據(jù))可以保留小數(shù)5.2顯式轉(zhuǎn)換編寫程序時過度依靠系統(tǒng)內(nèi)部的隱式轉(zhuǎn)換是不嚴禁的,因為隱式轉(zhuǎn)換規(guī)律并不清晰,大多是靠經(jīng)驗總結(jié)的規(guī)律。為了避免因隱式轉(zhuǎn)換帶來的問題,通常根邏輯需要對數(shù)據(jù)進行顯示轉(zhuǎn)換。概念:自己寫代碼告訴系統(tǒng)該轉(zhuǎn)成什么類型轉(zhuǎn)換為字符型:String(數(shù)據(jù))變

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論