只记录JS的关键知识点,内容比较散。
JS中的作用域:
1. 在函数内部 没有声明直接赋值的变量也属于全局变量。
function fn(){
var num1 = 10; //局部变量
num2 = 20; //全局变量
}
console.log(num2); //可以正常运行,不会报错。
2. 函数的形参,也可以看作是局部变量。
3.全局变量只有在浏览器关闭才会销毁,比较占内存资源。局部变量当我们程序执行完毕即销毁。
4.JS没有块级作用域。
if (3 < 5) {
var num = 10;
}
console.log(num); //正常运行,可以访问到{}里的变量
JS对象:
1.利用对象字面量创建对象{ }
// 创建对象
var obj = {
name: '老丁',
age: 18,
sex: '男',
sayHi: function() {
console.log('hi');
}
}
//输出obj的名字
console.log(obj.name);
//调用属性还有一个方法
console.log(obj['age']);
//调用对象中的方法,要添加小括号
obj.sayHi();
2.利用new Object创建对象
var obj = new Obecjt(); //创建一个空对象
obj.name = '张三丰';
obj.age = 18;
obj.sayHi = function(){
console.log('hi');
}
3.利用构造函数创建对象
function Obj(name, age, sex) {
this.name = name;
this.age = age;
this.sex = sex;
}
var dd = new Obj('丁丁',18,'男');
//构造函数首字母大写