JavaScript基础
对象
是什么,作用
在js中,对象是一组无序的相关属性和方法的集合,对象是由属性和方法组成的
var arr = ['小红', '女', 123, 158]
var obj={
name:'小红',
sex:'女',
age:123,
height:158
}
创建对象的三种方式(现阶段)
- 利用字面量
var obj = {
name: '小红',
sex: '女',
satHi: function() {
console.log('你好')
}
}
console.log(obj.name)
console.log(obj['sex'])
obj.satHi()
obj['satHi']()
- 利用new Object创建对象
var obj1 = new Object()
obj1.name = '小红';
obj1.sex = '女';
obj1.satHi = function() {
console.log('你好')
}
- 利用构造函数创建对象
var ldh = {
name: '刘德华',
age: 55,
sing: function() {
console.log('冰雨')
}
}
var zxy = {
name: '张学友',
age: 58,
sing: function() {
console.log('李香兰')
}
}
function Star(uname, uage, usex) {
this.name = uname;
this.age = uage;
this.sex = usex;
this.sing = function() {
console.log('唱歌')
}
}
var ldh = new Star('刘德华', 18, '男')
var zxy = new Star('张学友', 15, '男')
var gfc = new Star('郭富城', 30, '男')
var lm = new Star('黎明', 20, '男')
console.log(ldh)
console.log(typeof ldh)
console.log(ldh.name)
1. 构造函数名字首字母要大写
2. 构造函数不需要return就可以返回对象
3. 调用构造函数必须使用new
4. 只要new 构造函数(),调用了构造函数就会创建一个对象
5. 属性和方法前面必须添加this
构造函数与对象的区别
1. 构造函数是泛指某一大类如:明星,车子
2. 对象是特指某一个具体的事物如:刘德华,五菱宏光
3. 利用构造函数创建对象的过程也称为对象的实例化
new关键字执行的过程
1. 当new构造函数的时候会在内存中创建了一个空的对象
2. this就会指向刚才创建的空对象
3. 执行构造函数里面的代码给空对象添加属性和方法
4. 返回这个对象
遍历对象
var obj = {
name: '小红',
sex: '男',
age: 18
}
for (var k in obj) {
console.log(k)
console.log(obj[k])
}