C#3.0~3.5新功能之我见!


1. (C#)var x = 1; 这不就是Javascript的 var x = 1;
C# 本身就是强类型语言;即便定义成var x=1 ;编译器也会编译成int x= 1;
其意义何在呢?我还真有点搞不明白?

2. var obj = new {Name = "K",Age = 12};难道不是javascript版 var  obj= new Object {Name:'K',Age:12};
奇了怪!!obj.Name = 'K1' ;//报错;read only!如果不报错;那就更奇怪了;var obj = new {};不就等同于c#类了吗?
其意义何在呢?我还真有点搞不明白?

3.自动属性
public class user
{
    public Name{get;set;}
    public Age{get;set;}
}
Javascript版
function PMaker (n,v,readonly,o) //属性构建器
{
    var obj;
    obj = o;
    if(!obj)obj  = {};
    obj['_'+n] = v;
    obj[n] = {};
    obj[n]['Get'] = function(){return (obj['_'+n])};
    if(!readonly)
    {
        obj[n]['Set'] = function(v){obj['_'+n] = v};
    }
    return obj;
}
//初始化user对象;并创建Name属性;
var user  = PMaker('Name','Victor136');
//给user对象加入Age属性(只读);
PMaker('Age',18,true,user);
alert(user.Age.Get());
//user.Age.Set(); //报错(只读属性)
user.Name.Set('Victor136_1');
alert(user.Name.Get());


是不是那里搞错了啊!!!(C# VS Javascript ????)

posted @ 2008-04-19 22:56  23热爱,自学业余码农。  阅读(196)  评论(0)    收藏  举报