自己总结的四种写法
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>test</title>
</head>
<body>
<script>
//方法一
function Mytest(){
}
var m = new Mytest();
m.name = "zhangsan";
m.sex = "男";
m.age = 10;
m.hello = function(){
alert(m.name);
}
m["class"] = "三年二班";//第二种赋值方式 map赋值
alert(m.class);
//方法二
function Mytest(name,sex,age){
var m = new Object();
m.name = name;
m.sex = sex;
m.age = age;
m.hello = function(){
alert(this.name);
}
return m;
}
var m = Mytest("zhangsan","男",10);
//方法三
function Mytest(name,sex,age){
this.name = name;
this.sex = sex;
this.age = age
this.hello = function(){
alert(this.name);
}
}
var m = new Mytest("zhangsan","男",10);
//方法四
var m = {
name:"zhangsan",
sex:"男",
age:10,
hello:function(){
return this.name;
}
}
delete m.name;//使用delete删除对象的属性和方法;注意,当一个属性不能被删除时,delete只返回false
alert(m.name);//m.name已被删除,此时是undefined,
//遍历对象
var field = "";
for(field in m){
alert(m[field]);
}
//with 代码块
with(m){
document.write("姓名:"+name+"<br>");
document.write("性别:"+sex+"<br>");
document.write("年龄:"+age+"<br>");
document.write("方法:"+hello+"<br>");
}
</script>
</body>
</html>