创建一个对象
var obj=new Object();
obj.name="zhangsan";
obj.age=23;
obj.sayWorld=function(){
console.log("hello every! my name is "+obj.name);
};
console.log(obj.sayWorld);
obj.sayWorld();
函数也可以作为对象的属性,
如果一个函数作为一个对象的属性保存,
那么我们称这个函数是这个对象的方法
调用函数就所调用对象的方法
但是它只是名称上的区别没有其他的区别
function sayHello(){
alert("hello every!");
}
sayHello();
var obj1=new Object();
obj1.name="小红";
obj1.age=23;
obj1.sayWorld=sayHello;
obj1.sayWorld();//通过对象去调用,我们叫做方法
sayHello();//叫做函数的调用
通过对象字面量的方式创建对象
var person={
name:"小明",
age:12,
sayWord:function(){
alert("hello every! my name is "+person.name);
}
};
person.sayWord();
通过对象字面量创建对象
var person={
name:"小明",
gender:"男",
age:22,
adress:"九王庙兴业路8号"
};
console.log(person.name);
console.log(person["name"]);
console.log(person["gender"]);
枚举对象中的属性
使用for ... in 语句
for in 语法
for(var 变量 in 对象){
//语句
}
for(var item in person){
console.log(item);
console.log(person[item]);
console.log("属性名="+item+",属性值="+person[item]);
console.log("属性名="+item+",属性值="+person[item]);
}
var num;
拓展部分
变量的声明提前
- 使用var关键字声明的变量,会在所有的代码执行之前被声明(但是不会赋值) 但是如果声明变量时不使用var关键字,则变量不会被声明提前
函数声明提前
- 使用函数声明形式创建的函数function(){}
它会在所有的代码执行之前就被创建,所以我们在可以函数声明前来调用函数
使用函数表达式创建的函数不会被声明提前
在函数作用域中也有声明提前的特性
函数声明也会在函数中所有的代码执行前声明
console.log("num="+num);
var num=12;
console.log("num="+num);
fun();
fun2();
函数声明的方式创建的函数,可以在创建前调用
function fun(){
alert(123);
}