這種動態宣告物件的寫法適合接收參數資料,我可以動態宣告一個物件當作 properties 傳入一個已設計好的元件,這種設計方式目前已被多個 javascript library 引用,尤以 Ext 為最佳的代表。
<html>
<body>
<script>
// 宣告陣列
var a=["car","man","girl"];
for(var i=0;i<a.length;i++){
alert("陣列元素("+i+")=>"+ a );
}
// 宣告物件
var person={
// 宣告屬性
name:"曾國藩",
sex:"M",
// 宣告方法
go:function(){
alert("gogogo! My name is " + this.name)
}
}
// 使用物件時不用 new ,直接用
alert( person.name );
alert( person.sex );
person.go();
// 動態找出物件的所有屬性
alert("----- 動態找出物件的所有屬性 ----");
for(var p in person) {
if ( typeof(person[p])=="function" ) {
alert("function name is :"+p+", value is "+person[p]);
} else {
alert("property name is :"+p+", value is "+person[p]);
}
}
</script>
</body>
</html>
<html>
<body>
<script>
// 宣告陣列
var a=["car","man","girl"];
for(var i=0;i<a.length;i++){
alert("陣列元素("+i+")=>"+ a );
}
// 宣告物件
var person={
// 宣告屬性
name:"曾國藩",
sex:"M",
// 宣告方法
go:function(){
alert("gogogo! My name is " + this.name)
}
}
// 使用物件時不用 new ,直接用
alert( person.name );
alert( person.sex );
person.go();
// 動態找出物件的所有屬性
alert("----- 動態找出物件的所有屬性 ----");
for(var p in person) {
if ( typeof(person[p])=="function" ) {
alert("function name is :"+p+", value is "+person[p]);
} else {
alert("property name is :"+p+", value is "+person[p]);
}
}
</script>
</body>
</html>
全站熱搜
留言列表