根据我在javascript中的知识,有对象,我们可以为函数创建对象,或者我们可以使用文字符号创建对象。我从未在javascript中看到类的概念。最近我开始学习EXTJS(a javascript库)..在EXTJS中,人们说像预定义的类(例如,EXt,Panel等),甚至在api文档中,他们正在写作类...对我来说没有意义..我的问题是
1.为什么 extjs 人们使用“CLASS”这个词?
2.如果有类概念在extjs中我有什么方法可以考虑它?
3.在js中有一个概念“CLASS”(我认为没有)?
答案 0 :(得分:2)
JavaScript中的所有内容都像对象( JavaScript是基于原型的,面向对象的脚本语言),只有两个例外是null
和undefined
。甚至函数都是对象(实际上,这就是为什么JavaScript有first-class-functions)
对于ExtJS,“class”是虚拟概念:这是由框架的作者创建的概念扩展(依赖于JavaScript方式来声明类)
答案 1 :(得分:0)
答案 2 :(得分:0)
不,Javascript中没有类,但它支持一些面向对象的原则。您可以创建一个可以用作对象构造函数的函数:
function Point(x, y) {
this.x = x;
this.y = y;
}
通过使用new
关键字,该函数将用作构造函数:
var p = new Point(4, 5);
使用prototype
关键字,您可以向使用特定函数创建的对象添加方法,这类似于将方法放入类中。
虽然就语言而言,这实际上不是一个类,但它至少在某些方面走路和说话,就像一个类。在描述如何使用术语时,使用术语类是有用的,即使它实际上不是一个类。