<html>
<head>
<script>
//当cfunction方法名首字母大写的时候可以把该方法看做一个java中的类
//类模板
function Person(name,age){
this.name=name;
this.age=age;
}
var p=new Person('张三','20');
alert(p.name);
alert(p.age);
</script>
</head>
<body>
</body>
</html>
<html>
<head>
<script>
var x=10;
function f(){
this.x=20; //谁调用我 this指向谁
}
f();//其实是window.f();
alert(f.x);//10
alert(window.x);//20
</script>
</head>
<body>
</body>
</html>
<html>
<script>
/*
// json模拟map
var obj={name:'张三',age:'20',sex:'男人'};
//alert(obj.name);
//alert(obj.age);
//alert(obj.sex);
//或者
alert(obj['name']);
alert(obj['age']);
alert(obj['sex']);
//循环遍历obj
for(var key in value){
alert(key+' '+value);
}
*/
function Map(){
var arr=[];//空对象 private属性
//put
this.put=function(key,value){
arr[key]=value;
}
//get
this.get=function(key){
if(arr[key]){
return arr[key];
}
}
//remove
this.remove=function(key){
if(arr[key]){
delete(arr[key]);
}
}
//foreach
this.forEach=function(fn){
for(var key in arr){
fn(key,arr[key]);
}
}
}
var m=new Map();
m.put(1,"11111");
m.put(2,"222222");
m.put(3,"3333333333");
var value=m.get(2);
alert(value);
m.remove(2);
m.forEach(function(key,value){
alert(key+" "+value);
});
</script>
</html>