javascript匿名类

来源:互联网 发布:聚合色情直播软件 编辑:程序博客网 时间:2024/05/17 04:59

刚学编程时的代码

if (window.location.search.substring(10) == "1")
{
   category = ("flash");
}
if (window.location.search.substring(10) == "2")
{
   category = ("javascript");
}
if (window.location.search.substring(10) == "3")
{
   category = ("css");
}
一段时间后学会重用的代码
var loc = window.location.search.substring(10);
switch (loc) {
   case '1':
       ...
   case '2' :
       .........
   default :
       ............
}

面向对象的代码

var t={'1':"flash",'2':"javascript",'3':"css"};
category= (t[window.location.search.substring(10)]);

以原型机制翻译这句var t={'1':"flash",'2':"javascript",'3':"css"};

function T(){}       //我是类
T.prototype.1='flash';
T.prototype.2='javascript';
T.prototype.3='css';
var t = new T();
{'1':"flash",'2':"javascript",'3':"css"}是个匿名类,我在这里给它加了个名字T来翻译
'1':"flash"是javascript的一种特殊的写法,实际上就是类中的属性和值
再将原型机制翻译成类似于c#或java的代码
function T()        //我是类
{
    this.1 = 'flash';  
    //或者写成var 1 = 'flash'; ,this和var是在对象被调用的时候是有区别的,本文不解释此处
    this.2 = 'javascript';  
    this.3 = 'css';  
    this.Method = function(){alert("XXX");};//类有属性,当然可以有方法。
}
var t = new T();
原创粉丝点击