JavaScript 宣告變數
通過變數可以儲存一段資料,通俗的講,就是將資料儲存在變數中。
大家知道,資料都是儲存在計算機記憶體中,怎麼可能儲存在一個變數中。
事實上,變數是一個引用記憶體地址,且名字簡短易懂的引用佔位符,方便引用修改資料。
本文將通過程式碼例項詳細介紹一下JavaScript如何宣告一個變數與其注意點。
一.變數宣告:
ES2015之前,只能通過var宣告變數,沒有其他方式。
隨著版本發展到ES2015,新增let和const宣告變數,可以認為常量是一種特殊變數。
很多教程陳述說,使用var或者不使用var都可以宣告變數,不使用var宣告的變數具有全域性性。
本文可以負責任的說,此種說法是錯誤的,ES2015之前,只有通過var宣告的才是變數。
不使用var建立是全域性物件的屬性,本文不做介紹,具體參閱變數宣告帶var與不帶var的區別一章節。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼var webName="螞蟻部落";
通過var宣告變數webName並賦值字串"螞蟻部落",字串要加引號。
當然也可以賦值其他資料型別,程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼var num=5; var b=true; var arr=[];
上述程式碼宣告三個變數,分別賦值為數字、布林值和陣列物件。
[JavaScript] 純文字檢視 複製程式碼var webName="螞蟻部落", num=5 , b=true;
可以同時宣告多個變數並賦值,變數之間用逗號分隔。
變數可以宣告的同時賦值,也可以先宣告後賦值,或者不賦值。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼var webName="螞蟻部落"; var num,b; num=5; console.log(webName); console.log(num); console.log(b);
程式碼執行效果截圖如下:
如果沒有給變數賦值,那麼系統會自動為其賦值為undefined。
變數名稱區分大小寫,變數a與A是兩個不同的變數,程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼var a=5; var A=6; console.log(a); console.log(A);
程式碼執行效果截圖如下:
後宣告的同名變數會覆蓋先宣告的變數,如果a與A是同一個變數,最終列印結果都是6。
關於console.log方法可以參閱console.log() 方法一章節。
let與const宣告變數或者常量可以參閱如下兩篇文章:
(1).let關鍵字參閱JavaScript let一章節。
(2).const關鍵字參閱JavaScript const一章節。
二.變數命名規則:
變數的命名需要遵循一定的規則,否則會報錯:
(1).第一個字元必須是字母、下劃線(_)或美元符號($)。
(2).第一個之外的字元可以是下劃線、美元符號或任何字母或數字。
但是變數名稱不能是保留字或者關鍵字,它們在JavaScript中具有特殊的含義或者說未來將居有特殊含義。
比如變數名稱不能是var或者let,很容易理解,更多內容參閱JavaScript 保留字與關鍵字一章節。
三.變數宣告前置:
通過var宣告的變數具有前置效果,也就是說變數可以使用在前,宣告在後。
特別強調一下,通過let和const宣告的變數或者常量並沒有前置效果。
考慮到文章的篇幅問題,本文不做介紹,具體參閱JavaScript 變數與函式宣告前置一章節。
下面通過一個程式碼例項簡單一下前置現象:
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(webName); func(); var webName="螞蟻部落"; function func(){console.log("函式")}
程式碼執行效果截圖如下:
JavaScript程式碼是從上到下順序執行的,但是可以在變數和宣告之前列印和呼叫函式。
看起來有點不可思議,這就是所謂的變數與函式宣告前置效果,具體參閱上面推薦的文章。
相關文章
- JavaScript 變數與函式宣告前置JavaScript變數函式
- javascript變數的宣告以及命名規則JavaScript變數
- JavaScript 同時宣告多個變數並賦值JavaScript變數賦值
- TypeScript 變數宣告TypeScript變數
- JavaScript變數宣告帶var與不帶var區別JavaScript變數
- SCSS 變數的宣告CSS變數
- JS變數宣告和函式宣告提升JS變數函式
- 宣告變數的問題變數
- Mysql變數宣告的方式MySql變數
- js宣告全域性變數JS變數
- 淺談JS變數宣告和函式宣告提升JS變數函式
- 深入解析JS變數宣告和函式宣告提升JS變數函式
- JavaScript變數JavaScript變數
- c+++變數宣告和定義C++變數
- SQL 必須宣告標量變數SQL變數
- java變數怎麼設定(宣告)Java變數
- var與let宣告變數的區別變數
- go語言 變數的宣告與使用Go變數
- TypeScript基礎入門-變數宣告(一)TypeScript變數
- 8.10 標頭檔案剖析:變數宣告變數
- var、let、const宣告變數的區別變數
- Java變數的宣告和初始化Java變數
- python的變數使用前需宣告嘛Python變數
- JavaScript變數提升JavaScript變數
- javascript 變數物件JavaScript變數物件
- 用預編譯去理解函式宣告提升和變數宣告提升編譯函式變數
- golang 快速入門 [8.1]-變數型別、宣告賦值、作用域宣告週期與變數記憶體分配Golang變數型別賦值記憶體
- JavaScript之宣告提升JavaScript
- C++與Rust變數宣告的比較C++Rust變數
- go語言變數的宣告與賦值Go變數賦值
- 鴻蒙開發TypeScript語言:【變數宣告】鴻蒙TypeScript變數
- JavaScript之變數物件JavaScript變數物件
- 函式宣告與變數宣告的提升機制優先順序問題函式變數
- 深入淺出JS - 變數提升(函式宣告提升)JS變數函式
- 前端基礎(二):變數宣告的6種方法前端變數
- [C++]變數宣告與定義的規則C++變數
- JavaScript 3/30: CSS變數JavaScriptCSS變數
- JavaScript - 變數、值、型別JavaScript變數型別