公佈上期答案:小駝峯咱們常常用在變量、函數名屬性名這樣的標識符身上。 而大駝峯的命名方式,咱們更多用在class(類)上。後端
這裏須要注意的是:「不是必定要這樣操做,而是一種默認的約定。瀏覽器
聽從這樣的方式命名,不容易一眼被看出來剛學習js哦~。函數
今天咱們要說的就是數據類型,新接觸的小夥伴對這個可能就以爲比較迷糊了,怎麼數據還有類型??性能
固然~上一期咱們介紹了變量,利用變量咱們能夠大量減小重複的代碼,不知道你們有沒有注意這個被存儲的值,但是不少變的~學習
例如:優化
var a = 'miaov';
var b = 20181217;
var c = true;
複製代碼
等等等...咱們會發現一會英文,一會數字。可是有的加引號,有的就不加??spa
這到底由於什麼呢?3d
這就是咱們今天要介紹的大主題:數據類型,接下來~就有請這個你們庭成員一位一位登場吧~code
數據類型大分類cdn
咱們把數據類型分爲兩個大類:
• 基本類型(簡單類型)
• 複雜類型(引用類型)
咱們來看看基本類型有多基本,複雜類型有多複雜~
有請第一位:
基本類型 - String
String類型是由0或者多個字符組成的,就像咱們吃燒烤,給全部食材串起來~因此咱們把String叫作字符串。
那咱們怎麼分辨什麼是字符串呢?你們注意看圖,串的先後都露出來籤。
咱們的字符串的先後也有一個標誌,就是——引號,字符串由一對雙引號("")或者單引號('')包裹,在這裏雙引號和單引號沒有差異~因此,如下兩種都是字符串的表現方式:
var a = "miaov";
var b = 'miaov';
複製代碼
這裏對於學習後端的同窗可能會不太習慣~由於在後端中,單引號和雙引號是不同的,單引號只能是字符。
可是在ECMAScript中是沒有差異的。須要額外注意的是符號必須是配對的,不能出現以下配對:
var str = 'miaov"; //左邊單引號 右邊雙引號,不配對
複製代碼
爲何要強調這個問題呢?由於有時候咱們想要存儲的字符串可能自己本身就帶有引號,像下面這樣:
//這是"miaov"的紅寶書系列 <-這是我想存的內容
var str = "這是"miaov"的紅寶書系列"; //錯誤的方式
var str = '這是"miaov"的紅寶書系列'; //這纔是正確的
複製代碼
若是又有雙引號又有單引號怎麼辦?
同窗,你思惟很活躍哦~
這時候咱們須要用到一個東西 —— 轉義。
轉義是一個 \ 咱們來看一下案例:
以上爲str中存儲值打印的截圖
字符串的特色
ECMAScript中的字符串是不可變的,也就是說你只要建立出來,它就不能被改變了,可是不少小夥伴以爲,不會啊:
var lang = "Java";
lang = lang + "Script";
複製代碼
這不就改過來了麼??(關於+號,咱們後面再說,這裏你們只要知道,它就是拼接的功能)
事實上在這裏,當咱們想要改變某個變量保存的字符串,首先,它是銷燬了原來的字符串的!!而後再用另外一個包含新值的字符串填充該變量的。
那麼上面這個案例它具體是怎麼個步驟呢?
來看一下
第一步:建立一個能夠容納10個字符的新字符串
第二步:在這個字符串中填充"Java"和"Script"
第三步:銷燬原來的字符串"Java"和"Script",由於已經用不到了,咱們須要的是第一步時候建立的新字符串。
這個過程是發生在後臺的,咱們看不到,在某些舊版本的瀏覽器(指的是:IE六、低於1.0的Firefox等),由於這種頻繁的建立和銷燬,致使拼接字符串的性能不好,因此不少時候,咱們會選擇使用join方法。
不過在現代瀏覽器中對字符串的「+」運算作了優化,已經解決了這個問題,就能夠放心使用哦~
問題來了:那麼"+"的拼接方式仍是最慢的麼?知道的同窗趕忙留言哦~下期咱們揭曉答案!
下期預告
下期帶來基本類型 - Number,不是數字的數字類型等你來看~