node .js 變量

---恢復內容開始---spa

變量:所謂變量就是裏面儲存數據是能夠改變的。code

變量聲明的關鍵詞:var let const(在不少地方爲常量,但實際上是變量,不可重複改變的變量)。blog

 var i ;//變量名 let  j ;

若是聲明變量沒有賦值,則該變量默認值爲undefined(未定義)。作用域

let i ;
console.log(i);//undefined

b變量的第一賦值爲變量的初始化;console

let i ;
i= 5;
 console.log(i);//輸出值爲5

變量的聲明和初始化是能夠同時進行的.class

let i =5;
console.log(i);//5

重複聲明:若是是var來聲明變量,是能夠重複聲明的,ES裏面不會報錯。效率

若是重複聲明變量的時候,只是聲明而沒有賦值,那麼解釋器會忽略這一條聲明變量

 

 

 

let i =5;
let i =10;
console.log(i);//輸出爲10,

let j 6;
let j ;//這一步因爲沒有賦值,因此會被忽略的
console.log(j);

 

遺漏聲明:    所謂遺漏聲明,就是指沒有對變量進行聲明,可是就直接拿來用。嚴格模式下不支持遺漏聲明,而且也不要這樣書寫。數據類型

i=5 ;
console.log(i);

因爲JS是一門解釋性語言,因此在JS裏面,全部的變量均可以用var  let  const來進行聲明。引用

雖然能夠將任意數據類型存儲至同一個變量,可是不推薦這麼作。由於這樣會影響解析的效率。

 

 

 

變量提高(重要)

之因此如今不推薦使用var來聲明變量,就是由於var申明的變量會有一個變量提高。

所謂變量提高:就是指將變量的聲明提高至當前做用域的頂部

console.log(i);//undefined
var i =;
  
//等價於 
// var i;
//console.log(i);
//i  =5;

 

 

使用let或者const聲明的變量就不存在變量提高,以下:

 

console.log(i);
let i = 5;//報錯

 

 

 

 

Var聲明的變量不存在塊級做用域

塊級做用域就是一對大括號裏面會產生一個單獨的做用域

{
   var  i=5  ;
   console.log(i);  //5
}
  console.log(i);   //5

 

 

Letconst就擁有塊級做用域

 

{
let i  =5;
console.log(i);   //5
}


console.log(i);  //報錯

 

 

const i  =5  ;
console.log(i);   //5   

i =10 ;  //報錯
console.log(i);

 

 

JS裏面的數據類型(很是重要)

 

JS裏面的數據類型能夠分爲兩大類:基本數據類型  和  引用數據類型

 

基本數據類型就是指最簡單的數據段,不可拆分的

 

引用數據類型是指有多個基本數據類型組成的數據,是能夠被拆分的。

 

常見的基本數據類型:NumberStringBooleanNullUndefiendSymbol

 

常見的引用數據類型:Array  Object

 

基本數據類型和引用數據類型的區別

基本數據類型中,若是使用或者複製一個變量,那麼是複製的值,而在引用數據類型中,若是使用或者複製一個變量,是複製的引用

簡單數據類型示例:

let i =5;
let j =i;
onsole.log(i); //5
console.log(j); //5


j  =100;
  consloe.log(i);  //5
console.log(j); //100

 

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

---恢復內容結束---

變量:所謂變量就是裏面儲存數據是能夠改變的。

變量聲明的關鍵詞:var let const(在不少地方爲常量,但實際上是變量,不可重複改變的變量)。

 var i ;//變量名 let  j ;

若是聲明變量沒有賦值,則該變量默認值爲undefined(未定義)。

let i ;
console.log(i);//undefined

b變量的第一賦值爲變量的初始化;

let i ;
i= 5;
 console.log(i);//輸出值爲5

變量的聲明和初始化是能夠同時進行的.

let i =5;
console.log(i);//5

重複聲明:若是是var來聲明變量,是能夠重複聲明的,ES裏面不會報錯。

若是重複聲明變量的時候,只是聲明而沒有賦值,那麼解釋器會忽略這一條聲明

 

 

 

let i =5;
let i =10;
console.log(i);//輸出爲10,

let j 6;
let j ;//這一步因爲沒有賦值,因此會被忽略的
console.log(j);

 

遺漏聲明:    所謂遺漏聲明,就是指沒有對變量進行聲明,可是就直接拿來用。嚴格模式下不支持遺漏聲明,而且也不要這樣書寫。

i=5 ;
console.log(i);

因爲JS是一門解釋性語言,因此在JS裏面,全部的變量均可以用var  let  const來進行聲明。

雖然能夠將任意數據類型存儲至同一個變量,可是不推薦這麼作。由於這樣會影響解析的效率。

 

 

 

變量提高(重要)

之因此如今不推薦使用var來聲明變量,就是由於var申明的變量會有一個變量提高。

所謂變量提高:就是指將變量的聲明提高至當前做用域的頂部

console.log(i);//undefined
var i =;
  
//等價於 
// var i;
//console.log(i);
//i  =5;

 

 

使用let或者const聲明的變量就不存在變量提高,以下:

 

console.log(i);
let i = 5;//報錯

 

 

 

 

Var聲明的變量不存在塊級做用域

塊級做用域就是一對大括號裏面會產生一個單獨的做用域

{
   var  i=5  ;
   console.log(i);  //5
}
  console.log(i);   //5

 

 

Letconst就擁有塊級做用域

 

{
let i  =5;
console.log(i);   //5
}


console.log(i);  //報錯

 

 

const i  =5  ;
console.log(i);   //5   

i =10 ;  //報錯
console.log(i);

 

 

JS裏面的數據類型(很是重要)

 

JS裏面的數據類型能夠分爲兩大類:基本數據類型  和  引用數據類型

 

基本數據類型就是指最簡單的數據段,不可拆分的

 

引用數據類型是指有多個基本數據類型組成的數據,是能夠被拆分的。

 

常見的基本數據類型:NumberStringBooleanNullUndefiendSymbol

 

常見的引用數據類型:Array  Object

 

基本數據類型和引用數據類型的區別

基本數據類型中,若是使用或者複製一個變量,那麼是複製的值,而在引用數據類型中,若是使用或者複製一個變量,是複製的引用

簡單數據類型示例:

let i =5;
let j =i;
onsole.log(i); //5
console.log(j); //5


j  =100;
  consloe.log(i);  //5
console.log(j); //100
相關文章
相關標籤/搜索