前端三層.png
一、基礎語法
(一)Javascript書寫位置
- 在<body>中<script></script>標簽對內,書寫Javascript代碼
- 將代碼單獨保存在.js格式文件中,在html文件中時間<script></script>的形式引入它
這個極其簡單,就不舉例了。
(二) 認識輸出語句
alert()
語句,彈出一個警告框
consolo.log()
控制臺輸出
/*字符串顯示需要用引號包括
* 語句末尾書寫英文狀態下的分號
*/
<script>alert("開始學習javascript!");</script>
alert效果.png
<script>console.log("在調試控制臺才能看到我!");</script>
console顯示.png
二、變量
- 變量是計算機語言中能儲存計算機結果或能表示值的抽象概念。
- 變量不是數值本身,它是一個用于存儲數值的容器
(一)定義變量
- 第一步:聲明,并賦值
var a = 10;
使用var
關鍵字定義變量,=
表示賦值
es6 使用let = 10
; 暫時不討論這個,進入ES6再研究這個。 - 第二步,變量被賦值后,就可以使用了;
console.log(a);
(二)改變變量的值
- 變量的值可以被改變,后續使用不再需要書寫聲明關鍵字
var
.
var a = 10; //定義變量a,并賦初值為10
a = 18; //更改變量a的值為18
console.log(a) // 18
(三)變量的命名
- 只能由字母、數字、下劃線、$符號組成,但不能以數字開頭。
- 不能是javascript關鍵字或保留字,
- 變量名大小寫敏感。
這也是Javascript標識符的命名規則,函數、類名、對象的屬性等也遵循這個規則
** 優秀變量命名法:**
- 駝峰命名法:
myVariable
建議使用 - C風格:
my_variable
(四)變量的默認值
- 一個變量只定義,不賦初值,默認值是
undefined
- 一個變量只有被var定義,并賦初值之后,才算正式初始化完成。
(五)變量聲明提升
變量聲明提升:提前使用一個稍后才聲明的變量,而不發生異常
- 在執行所有代碼前,javascript有一個預解析階段,會于都所有變量的定義
三、Javascript基本數據類型
數據類型簡介與檢測
兩大類:基本數據類型 & 復雜數據類型
- 基本數據類型:Number 、String、Boolean、Undefined、Null
- 復雜數據類型:Object、Array、Function、RegExp、Date、Map、Set等等
typeof運算符
使用
typeof
運算符可以檢值或變量的類型
var a = 10;
console.log(typeof a); //number
var b = 'this is javascript';
console.log(typeof b) //string
5種基本數據類型typeof檢測結果
typeof檢測結果.png
基本數據類型
(一)Number(數字)類型
- 所有數字不分大小、部分整浮、部分正負,都是數字類型
var a=10; var b= 3.1415926; var c = -12; var d = 0b10;
- 特殊數字類型NaN.
NaN
即“not a number”,字面意思“不是一個數”,但它市一個數字類型的值。
Javascript數學運算中,若結果不能得到數字,其結果往往都是NaN。
NaN 不自等。
(二)String(字符串)類型
- 字符串就是“人類自然語言”
- 字符串要用引號包裹。雙引號、單引號均可,但必須成對。數字用引號包裹后,也會轉變為字符串。
-
+
可以用來拼接多個字符串。
console.log("abc"+"def")
,最終輸出為:"abcdef"
- 字符串length屬性:表示字符串的長度。
'我愛javascript'.length
,結果顯示:12。 -
字符串常用方法一覽:
字符串常用方法.png
1.charAt()方法: 得到指定位置的字符。'abcde'.charAt(0)
獲取字符串第0位的字符。
2.substring(a,b)方法:
- (1)得到從a開始到b結束(不包括b)的子串。
'abcde'.substring(2,4)
結果為cd。 - (2)substring(a,b),a可以大于b,數字順序將自動調整為小數在前。
3.substr(a,b)方法:
- (1)得到從a開始的長度為b的子串。
'abcdefg'.substr(2,4)
結果為cdef - (2)substr(a,b),a可以是負數,表示倒數位置。
4.slice(a,b)方法:
- (1) slice(a,b)得到從a開始到b結束(不包括b處)的字串。
- (2) slice(a,b)參數a可以是負數。
- (3) slice(a,b)參數a必須小于參數b.
** 5.toUpperCase()轉為大寫 **
javascript
.toUpperCase(); //JAVASCRIPT
** 6.toLowerCase()轉為小寫 **
‘JAVASCRIPT’.toLowerCase();
//javascript
** 7.indexOf() **
- (1) indexOf(a,b)方法返回某個指定的字符串值在字符串中首次出現的位置
- (2) 如果要檢索的字符串值沒有出現,則該返回 -1
(三)Boolean(布爾)類型
- 布爾型值只有兩個:true和false,分別表示真和假。
true、false
(四)undefined
- 一個沒有被賦值的變量默認值為
undefined
,而undefined的類型也是undefined
。 - undefined是一種類型,也是值,這種類型只有它自己一個值。
(五)null
- null表示‘空’,空對象
- 當需要將對象銷毀、數組銷毀或則刪除事件監聽時,將他們設置為null。
(六)數據類型轉換
1.其他->數字
- 使用Number()函數
Number('123'); //123
Number('123.4'); //123.4
Number('2022年'); //NaN
Number('2e3'); //2000
Number(' '); //0
- parseInt()函數: 將字符轉換為整數
parseInt(3.14) //3
parseInt('圓周率時3.14') //NaN
parseInt(true) //NaN
parseInt('3是一個數') //3
- parseFloat():將字符串轉為浮點數
···
parseFloat(3.14) //3.14
parseFloat('圓周率時3.14') //NaN
parseFloat('3是一個數') //3
···
2.轉換為字符串
- 使用String()函數
String(123); //'123'
String(123.45) //'123.45'
String(NaN); // 'NaN'
- toString()方法:
var a=6; a.toString( ); // `6`
復雜數據類型一覽
數組、對象、函數等
以后再詳細記錄。
javascript數據類型.png
四、表達式與操作符
(一)JS基本表達式
1.算術表達式
算術運算符包括:加
+
、 減-
、 乘*
、 除/
、 取余%
。
- (1)加號有“加法”和“連接符”兩個作用。一般加號兩邊都是數字,則為“加法”,否則為連接符。
- (2)取余運算也叫“求模運算”,用“%”表示。
a%b
表示求a除以b的余數。結果只獲得余數。 - (3)默認情況下,乘除法優先級高于加減法,使用圓括號改變運算順序。
- (4)隱式類型轉換:如果參與數學運算的操作數不是數字類型,javascript將自動將此操作數轉換為數字類型。加號參考第一條。
- (5)javascript使用IEEE754二進制浮點數算術標準,導致個別小數計算產生“精度”問題。解決辦法:在進行小數運算時,調用
toFixed()
方法,保留指定的小數位數。舉例:(0.1+0.23).toFixed(3)
- (6)javascript中沒有提供冪計算、開根號的運算符,需要使用Math對象相關方法進行計算。
2.關系表達式
關系運算符:大于
>
、小于<
、大于等于>=
、小于等于<=
、等于==
、不等于!=
、全等于===
、不全等于!==
。
- (1)判斷相等,使用
==
。一個=
是賦值符號,并不判斷相等。 - (2)特殊情況,NaN不自等。使用
isNaN()
函數來判斷變量的值是否為NaN。
3.邏輯表達式
邏輯運算符:非
!
、與&&
、或||
。
邏輯運算優先級:非->與->或
- (1)
!
表示非,也可以稱為“置反運算”。!
是一個“單目運算符”,只需要一個操作數。結果一定是一個布爾值。 - (2)
&&
表示“并且”,稱之為“與運算”,口訣:
true && true //true
true && fasle //false
false && false //false
false && true //false
- (3)
||
表示或則,稱為“或運算”,口訣:
true && true //true
true && fasle //true
false && false //false
false && true //true
4.賦值表達式
賦值運算符: 賦值
=
、快捷賦值+=
,-=
,*=
,/=
,%=
、自增運算++
、自減運算--
- (1) 一個等號
=
,將等號右邊的數值賦予左邊的變量。可以連續使用賦值運算符。 - (2) 快捷賦值運算符表示再原數值基礎上進一步進行運算。
- (3)
++
和--
表示再自身基礎上加1或減1。 - (4)
a++
先用再加,++a
先加再用