javascript基礎(chǔ)語法

  • HTML :標(biāo)記語言
  • JavaScript :編程語言

變量

1.變量是要變化的量
2.變量指的是在程序中保存數(shù)據(jù)的一個(gè)容器
3.變量是計(jì)算機(jī)內(nèi)存中存儲(chǔ)數(shù)據(jù)的標(biāo)識(shí)符,根據(jù)變量名稱可以獲取到內(nèi)存中存儲(chǔ)的數(shù)據(jù)
4.也就是說幕庐,我們向內(nèi)存中存儲(chǔ)了一個(gè)數(shù)據(jù)鹿寨,然后要給這個(gè)數(shù)據(jù)起一個(gè)名字,為了是我們以后再次找到他
5.變量的本質(zhì)是內(nèi)存中一個(gè)存儲(chǔ)單元
6.語法:var 變量名 = 值
7.示例:

//方法1:
// 定義變量
 var num
//給變量賦值
num= 100

//方法2:給變量賦值
var age = 20

注意
1.每個(gè)變量名只能存儲(chǔ)一個(gè)值
2.給同一個(gè)變量名賦值士败,后一個(gè)值將覆蓋前一個(gè)值
3.js區(qū)分英文大小寫

數(shù)據(jù)類型

分類:基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型

基本數(shù)據(jù)類型
1.數(shù)值型:number

  • 所有數(shù)字都是數(shù)值型
  • NaN,一個(gè)非數(shù)字

2.字符串:string

  • 被引號(hào)包裹的值(單引號(hào)或者雙引號(hào))

3.布爾型:boolean

  • 只有true 和 false

4.null類型:null

  • null,表示空的意思

5.undefined類型:undefined

  • undefined满着,表示未定義的意思

復(fù)雜數(shù)據(jù)類型
1.對(duì)象數(shù)據(jù)類型(object)
2.函數(shù)類型(function)
...

判斷數(shù)據(jù)類型

  • 既然已經(jīng)把數(shù)據(jù)分開了類型谦炒,那么我們就要知道我們存儲(chǔ)的數(shù)據(jù)是一個(gè)什么類型的數(shù)據(jù)
  • 使用 typeof 關(guān)鍵字來進(jìn)行判斷
// 第一種使用方式
var num = 100;
console.log(typeof num );

// 第二種使用方式
var name= 'abcdefg';
console.log(typeof(name));

判斷一個(gè)變量是不是數(shù)字

  • 可以使用 isNaN 這個(gè)方法來判斷一個(gè)變量是不是數(shù)字
  • isNaN :is not a number
// 如果變量是一個(gè)數(shù)字
var num = 100;
console.log(isNaN(num )); //=> false

// 如果變量不是一個(gè)數(shù)字
var name= 'Jack'
console.log(isNaN(name)); //=> true

數(shù)據(jù)類型轉(zhuǎn)換

  • 數(shù)據(jù)類型之間的轉(zhuǎn)換,比如數(shù)字轉(zhuǎn)成字符串风喇,字符串轉(zhuǎn)成布爾宁改,布爾轉(zhuǎn)成數(shù)字等

其他數(shù)據(jù)類型轉(zhuǎn)成數(shù)值

1.Number(變量)

  • 可以把一個(gè)變量強(qiáng)制轉(zhuǎn)換成數(shù)值類型
  • 可以轉(zhuǎn)換小數(shù),會(huì)保留小數(shù)
  • 可以轉(zhuǎn)換布爾值
  • 遇到不可轉(zhuǎn)換的都會(huì)返回 NaN

2.parseInt(變量)

  • 從第一位開始檢查魂莫,是數(shù)字就轉(zhuǎn)換还蹲,知道一個(gè)不是數(shù)字的內(nèi)容
  • 開頭就不是數(shù)字,那么直接返回NaN
  • 不認(rèn)識(shí)小數(shù)點(diǎn)耙考,只能保留整數(shù)

3.parseFloat(變量)

  • 從第一位開始檢查谜喊,是數(shù)字就轉(zhuǎn)換,知道一個(gè)不是數(shù)字的內(nèi)容
  • 開頭就不是數(shù)字倦始,那么直接返回NaN
  • 認(rèn)識(shí)小數(shù)點(diǎn)

4.除了加法以外的數(shù)學(xué)運(yùn)算(-斗遏,*,/鞋邑,%等)

  • 運(yùn)算符兩邊都是可運(yùn)算數(shù)字
  • 如果運(yùn)算符任何一邊不是一個(gè)可運(yùn)算數(shù)字诵次,則返回NaN
  • 加法不可以用

其他數(shù)據(jù)類型轉(zhuǎn)換成字符串

1.變量.toString()

  • 有一些數(shù)據(jù)類型不能使用toString()方法,比如undefined和null

2.String(變量)

  • 所有數(shù)據(jù)類型都可以

3.使用加法運(yùn)算

  • 在JS里面枚碗, +有兩個(gè)含義
  • 字符串拼接:只要+任意一邊是字符串逾一,就會(huì)進(jìn)行字符串拼接
  • 加法運(yùn)算:只有+兩邊都是數(shù)字時(shí),才會(huì)進(jìn)行數(shù)學(xué)運(yùn)算
    -隱形轉(zhuǎn)換:10 + '' => '10'

其他數(shù)據(jù)類型轉(zhuǎn)成布爾

1.Boolean(變量)

  • 在 js 中肮雨,只有 ''嬉荆、0null酷含、undefined鄙早、NaN,這些是 false椅亚,其余都是 true

運(yùn)算符

  • 就是在代碼里面進(jìn)行運(yùn)算的時(shí)候使用的符號(hào)限番,不光只是數(shù)學(xué)運(yùn)算,我們?cè)?js 里面還有很多的運(yùn)算方式

算術(shù)運(yùn)算符

  1. +

    • 只有符號(hào)兩邊都是數(shù)字的時(shí)候才會(huì)進(jìn)行加法運(yùn)算
    • 只要符號(hào)任意一邊是字符串類型呀舔,就會(huì)進(jìn)行字符串拼接
  2. -

    • 會(huì)執(zhí)行減法運(yùn)算

    • 會(huì)自動(dòng)把兩邊都轉(zhuǎn)換成數(shù)字進(jìn)行運(yùn)算

  3. *

    • 會(huì)執(zhí)行乘法運(yùn)算
    • 會(huì)自動(dòng)把兩邊都轉(zhuǎn)換成數(shù)字進(jìn)行運(yùn)算
  4. /

    • 會(huì)執(zhí)行除法運(yùn)算
    • 會(huì)自動(dòng)把兩邊都轉(zhuǎn)換成數(shù)字進(jìn)行運(yùn)算
  5. %

    • 會(huì)執(zhí)行取余運(yùn)算
    • 會(huì)自動(dòng)把兩邊都轉(zhuǎn)換成數(shù)字進(jìn)行運(yùn)算

賦值運(yùn)算符

  1. =

    • 就是把 = 右邊的賦值給等號(hào)左邊的變量名
    • var num = 100
    • 就是把 100 賦值給 num 變量
    • 那么 num 變量的值就是 100
  2. +=

    var a = 10;
    a += 10;
    console.log(a); //=> 20
    
    • a += 10 等價(jià)于 a = a + 10
  3. -=

    var a = 10;
    a -= 10;
    console.log(a); //=> 0
    
    • a -= 10 等價(jià)于 a = a - 10
  4. *=

    var a = 10;
    a *= 10;
    console.log(a); //=> 100
    
    • a *= 10 等價(jià)于 a = a * 10
  5. /+

    var a = 10;
    a /= 10;
    console.log(a); //=> 1
    
    • a /= 10 等價(jià)于 a = a / 10
  6. %=

    var a = 10;
    a %= 10;
    console.log(a); //=> 0
    
    • a %= 10 等價(jià)于 a = a % 10

比較運(yùn)算符

  1. ==
    • 比較符號(hào)兩邊的值是否相等弥虐,不管數(shù)據(jù)類型
    • 1 == '1'
    • 兩個(gè)的值是一樣的,所以得到 true
  2. ===
    • 比較符號(hào)兩邊的值和數(shù)據(jù)類型是否都相等
    • 1 === '1'
    • 兩個(gè)值雖然一樣媚赖,但是因?yàn)閿?shù)據(jù)類型不一樣霜瘪,所以得到 false
  3. !=
    • 比較符號(hào)兩邊的值是否不等
    • 1 != '1'
    • 因?yàn)閮蛇叺闹凳窍嗟鹊模员容^他們不等的時(shí)候得到 false
  4. !==
    • 比較符號(hào)兩邊的數(shù)據(jù)類型和值是否不等
    • 1 !== '1'
    • 因?yàn)閮蛇叺臄?shù)據(jù)類型確實(shí)不一樣惧磺,所以得到 true
  5. >=
    • 比較左邊的值是否 大于或等于 右邊的值
    • 1 >= 1 true
    • 1 >= 0 true
    • 1 >= 2 false
  6. <=
    • 比較左邊的值是否 小于或等于 右邊的值
    • 1 <= 2 true
    • 1 <= 1 true
    • 1 <= 0 false
  7. >
    • 比較左邊的值是否 大于 右邊的值
    • 1 > 0 true
    • 1 > 1 false
    • 1 > 2 false
  8. <
    • 比較左邊的值是否 小于 右邊的值
    • 1 < 2 true
    • 1 < 1 false
    • 1 < 0 false

邏輯運(yùn)算符

  1. &&
    • 進(jìn)行 且 的運(yùn)算
    • 符號(hào)左邊必須為 true 并且右邊也是 true颖对,才會(huì)返回 true
    • 只要有一邊不是 true,那么就會(huì)返回 false
    • true && true true
    • true && false false
    • false && true false
    • false && false false
  2. ||
    • 進(jìn)行 或 的運(yùn)算
    • 符號(hào)的左邊為 true 或者右邊為 true磨隘,都會(huì)返回 true
    • 只有兩邊都是 false 的時(shí)候才會(huì)返回 false
    • true || true true
    • true || false true
    • false || true true
    • false || false false
  3. !
    • 進(jìn)行 取反 運(yùn)算
    • 本身是 true 的缤底,會(huì)變成 false
    • 本身是 false 的顾患,會(huì)變成 true
    • !true false
    • !false true

自增自減運(yùn)算符(一元運(yùn)算符)

  1. ++

    • 進(jìn)行自增運(yùn)算

    • 分成兩種,前置++后置++

    • 前置++个唧,會(huì)先把值自動(dòng) +1江解,在返回

      var a = 10;
      console.log(++a);
      // 會(huì)返回 11,并且把 a 的值變成 11
      
    • 后置++徙歼,會(huì)先把值返回犁河,在自動(dòng)+1

      var a = 10;
      console.log(a++);
      // 會(huì)返回 10,然后把 a 的值變成 11
      
  2. --

    • 進(jìn)行自減運(yùn)算
    • 分成兩種魄梯,前置--后置--
    • ++ 運(yùn)算符道理一樣

運(yùn)算符優(yōu)先級(jí)

JavaScript中的運(yùn)算符優(yōu)先級(jí)是一套規(guī)則呼股。該規(guī)則在計(jì)算表達(dá)式時(shí)控制運(yùn)算符執(zhí)行的順序。具有較高優(yōu)先級(jí)的運(yùn)算符先于較低優(yōu)先級(jí)的運(yùn)算符執(zhí)行画恰。例如彭谁,乘法的執(zhí)行先于加法。 下表按從最高到最低的優(yōu)先級(jí)列出JavaScript運(yùn)算符允扇。具有相同優(yōu)先級(jí)的運(yùn)算符按從左至右的順序求值缠局。

運(yùn)算符 描述
.()[] 字段訪問、數(shù)組下標(biāo)考润、函數(shù)調(diào)用以及表達(dá)式分組
++ ---~ ! delete new typeof void -元運(yùn)算符狭园、返回?cái)?shù)據(jù)類型、對(duì)象創(chuàng)建糊治、未定義值
*/% 乘法唱矛、除法、取模
+ - + 加法井辜、減法绎谦、字符串連接
<< >> >>> 移位
< <= > >= instanceof 小于、小于等于粥脚、大于窃肠、大于等于、instanceof
& 按位與
^ 按位異或
| 按位或
&& 邏輯與
|| 邏輯或
?: 條件
= oP= 賦值刷允、運(yùn)算賦值
, 多重求值
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末冤留,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子树灶,更是在濱河造成了極大的恐慌纤怒,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,744評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件天通,死亡現(xiàn)場(chǎng)離奇詭異泊窘,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門州既,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谜洽,“玉大人萝映,你說我怎么就攤上這事吴叶。” “怎么了序臂?”我有些...
    開封第一講書人閱讀 163,105評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵蚌卤,是天一觀的道長。 經(jīng)常有香客問我奥秆,道長逊彭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,242評(píng)論 1 292
  • 正文 為了忘掉前任构订,我火速辦了婚禮侮叮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘悼瘾。我一直安慰自己囊榜,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,269評(píng)論 6 389
  • 文/花漫 我一把揭開白布亥宿。 她就那樣靜靜地躺著卸勺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪烫扼。 梳的紋絲不亂的頭發(fā)上曙求,一...
    開封第一講書人閱讀 51,215評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音映企,去河邊找鬼悟狱。 笑死,一個(gè)胖子當(dāng)著我的面吹牛堰氓,可吹牛的內(nèi)容都是我干的芽淡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,096評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼豆赏,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼挣菲!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起掷邦,我...
    開封第一講書人閱讀 38,939評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤白胀,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后抚岗,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體或杠,經(jīng)...
    沈念sama閱讀 45,354評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,573評(píng)論 2 333
  • 正文 我和宋清朗相戀三年宣蔚,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了向抢。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片认境。...
    茶點(diǎn)故事閱讀 39,745評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖挟鸠,靈堂內(nèi)的尸體忽然破棺而出叉信,到底是詐尸還是另有隱情,我是刑警寧澤艘希,帶...
    沈念sama閱讀 35,448評(píng)論 5 344
  • 正文 年R本政府宣布硼身,位于F島的核電站,受9級(jí)特大地震影響覆享,放射性物質(zhì)發(fā)生泄漏佳遂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,048評(píng)論 3 327
  • 文/蒙蒙 一撒顿、第九天 我趴在偏房一處隱蔽的房頂上張望丑罪。 院中可真熱鬧,春花似錦凤壁、人聲如沸吩屹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽祟峦。三九已至,卻和暖如春徙鱼,著一層夾襖步出監(jiān)牢的瞬間宅楞,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評(píng)論 1 269
  • 我被黑心中介騙來泰國打工袱吆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留厌衙,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,776評(píng)論 2 369
  • 正文 我出身青樓绞绒,卻偏偏與公主長得像婶希,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蓬衡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,652評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容