prototype不是.
是它的一个属性,不是一个方法
而这个属性的类型是一个Highlighter类.

解决方案 »

  1.   

    定义属性为什么要这样定义呢?prototype不是一个关键字吗?
      

  2.   

    属性定义为普通变量类型,或是类,都可以.
    而在oo中,一切都是对象.即便是一个普通的string
    string s="abcde";
    s就是string类的一个实例.用自定义类做属性还是用普通变量类型做属性,看你怎么设计了.
    我以student和studentClass举例
    1,用普通类型做属性
    从数据库角度来看.
    create table student(id int /*学号*/,name varchar(10) /*姓名*/,classname varchar(10) /*班级名*/)那么用cs来描述这个实体
    class student
    {
      private int id;
      private string name;
      private string className;
    }
    2,用自定义实体作为实体属性
    从数据库角度
    create table student(id int /*学号*/,name varchar(10) /*姓名*/,classid int /*班级编号*/)
    create table studentClass(id int /*班级号*/,name varchar(10) /*班级名*/)用c#来描述它
    class student
    {
      private int id;
      private string name;
      private studentClass sClass; //这里sClass域或字段本身就是一个studentClass实体
    }
    class studentClass
    {
      private int id;
      private string name;
    }我虽然是以c#举例,但从OO的角度,js也是一样,只不过写法有区别而已.