Javascript基礎筆記(1)-基礎語法與表達式

前端三層.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)&&表示“并且”,稱之為“與運算”,口訣:\color{red}{同是真才真!}
true && true  //true
true && fasle  //false
false && false  //false
false && true  //false
  • (3)||表示或則,稱為“或運算”,口訣:\color{red}{有真就真!}
true && true  //true
true && fasle  //true
false && false  //false
false && true  //true

4.賦值表達式

賦值運算符: 賦值=、快捷賦值+=,-=,*=,/=,%=、自增運算++、自減運算--

  • (1) 一個等號=,將等號右邊的數值賦予左邊的變量。可以連續使用賦值運算符。
  • (2) 快捷賦值運算符表示再原數值基礎上進一步進行運算。
  • (3) ++--表示再自身基礎上加1或減1。
  • (4) a++先用再加,++a先加再用

\color{red}{運算順序:非運算->數學運算->關系運算->邏輯運算}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,606評論 6 533
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,582評論 3 418
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,540評論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,028評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,801評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,223評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,294評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,442評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,976評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,800評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,996評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,543評論 5 360
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,233評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,662評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,926評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,702評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,991評論 2 374

推薦閱讀更多精彩內容