前言
由于最近在學(xué)習(xí)RN,但是在學(xué)習(xí)的過(guò)程中發(fā)現(xiàn)對(duì)JS好陌生,雖然之前學(xué)過(guò)一些,早已經(jīng)遺忘了。所以購(gòu)買(mǎi)了一本JavaScript高級(jí)程序設(shè)計(jì)的一本書(shū),在晚上的時(shí)候抽一兩個(gè)小時(shí)來(lái)學(xué)習(xí)JS,目前JS占據(jù)了前端、后臺(tái)、移動(dòng)端各個(gè)領(lǐng)域,所以如果有時(shí)間的好還是很有必要去學(xué)一下,畢竟現(xiàn)在的互聯(lián)網(wǎng)市場(chǎng)你們都懂得。
JavaScript基礎(chǔ)簡(jiǎn)述
- JavaScript的語(yǔ)法大量借鑒了C、Java的語(yǔ)法
- JavaScript中的變量、函數(shù)名和操作符都是區(qū)分大小寫(xiě)的
- JavaScript中的標(biāo)識(shí)符不能以數(shù)字開(kāi)頭,其他字符可以是字母下劃線美元符號(hào)和數(shù)字等
嚴(yán)格模式
ECMAScript5一入了嚴(yán)格模式,嚴(yán)格模式是為JavaScript定義了一種不同的解析和執(zhí)行模型。嚴(yán)格模式會(huì)對(duì)一些不安全的操作拋出異常。使用嚴(yán)格模式的方法就是在頂部使用use strict,也可以在函數(shù)里面進(jìn)行單獨(dú)使用,如:
function test(){
"use strict";
}
語(yǔ)句
ECMAScript中語(yǔ)句以分號(hào)結(jié)束,但是不強(qiáng)制,如果結(jié)尾省略則解析器確定語(yǔ)句的結(jié)尾,但是不建議使用。如:
var sum = a + b;
var diff = a-b
變量
ECMAScript的變量是松散類型的,直接看下面的代碼:
var message = "Hi";
message = 100; //上面定義了message的值為一個(gè)字符串,下面仍然可以改變他的值為Number類型
function test() {
var value = "hi";
}
test();
//在函數(shù)中定義的變量為局部變量,出了函數(shù)就不能正常訪問(wèn)了
// 會(huì)出現(xiàn)該異常ReferenceError: value is not defined
alert(value);
function test2() {
value2 = "hi";
}
test2();
//此處value2是有值可以彈窗的,省略了var操作符默認(rèn)為成員變量
alert(value2);
數(shù)據(jù)類型
ECMAScript中的數(shù)據(jù)類型有:
- Undefined
- Null
- Boolean
- Number
- String
- Object
使用操作符typeof可以對(duì)檢測(cè)變量的數(shù)據(jù)類型。
console.log(typeof "zhangg");
console.log(typeof 92);
console.log(typeof null);
console.log(typeof aaaa);
//輸出的結(jié)果
string
number
object
undefined