1. 程式人生 > >javascript基礎學習一(變數)

javascript基礎學習一(變數)

var

用var申明一個變數:

var a = 1;
console.log(a) // 1
console.log(a) // undefined
var a = 1;

js的申明過程:

var a; // undefined,只申明,不賦值。會有個預設值undefined
a = 1 // 1

例子:

var a = 1;
var a;
console.log(a) // 1, 對重複定義且未賦值的變數,不會覆蓋之前的值
var a = 1;
var a = 2;
console.log(a) // 2, 重複定義有賦值,覆蓋之前的值

注:沒有修飾符的變數,為全域性變數,如:a = 3,這裡a為全域性變數

let

let沒有與解析,不能先用再申明

console.log(a); // 報錯:a is not defined
let a = 2;

同一個作用域下不能重複申明,具有塊及作用域

let a = 1;
let a = 3;
console.log(a); // 報錯:Identifier 'a' has already been declared
let a = 1;
{
let a = 2;
console.log(a) // 2(不在同一個作用域)
}

const

同let,另外const申明後不可修改,物件除外

const a = 1;
a = 2;
console.log(a) // 報錯:Assignment to constant variable
const a = {
name: 'lyh',
age: 18
}
a.name = 'lyh2'
console.log(a) // {name: 'lyh2', age: 18}
const a = [1,2]
a[1] = 5
console.log(a)