Discuss / JavaScript / 总结

总结

Topic source

变量域:

一般情况var创建的变量可以为全局或者函数内部的变量域,但是没有块级变量域,如for,while等

因此引入了let在for等地方创建块级变量

note:所有函数其实也都是全局变量域,挂靠在window下

解构赋值:

快速定义变量并赋值

//数组解构-相应也要用[]
var arr =[1 , 2 ,3];
var[a ,b , c ] = arr;

//对象解构-相应用{}
var obj ={
name:"louis",
age:18,
number:"+123456789"
};
//解构得与对象的key同名,可以用:起别名,还可以对变量赋予默认值,如age,gender 
var {name:one , age = 21 , gender="man", location} = obj;
console.log(one);//"louis"
consoel.log(age);//18
consoel.log(gender);//man
console.log(location);//undefine

解构赋值应用:函数传入参数直接映射到函数参数未知量上  

function personData({name,loction}){
console.log("welecoom you,"+ name + "in" + location);
}

var xiaoming = {
name: "xiaoming",
age: 18,
loctioon: JiangXi
};

//传入实参,形参自动在实参(这里是对象)中对应
personData(xiaoming);


----->数组是一个特殊对象,key为下标,但是不能用
var array =['hello', 'JavaScript', 'ES6'];

function print([0,1,2]){
console.log('x = ' + 0 + ', y = ' + 1 + ', z = ' + 2);
}
print(array);

//结果:SyntaxError: Invalid destructuring assignment target

  • 1

Reply