Kendo UI不仅仅提供了一些好看的UI组件,而且也提供一个JavaScript构建对象,实现继承的方法,其形式接近于C++、Java的类继承方法。
JavaScript也是一种面向对象的开发语言,但和C++,Java,C#所不同的是,它的对象不是基于类(Class),而是基于对象原型(ProtoType),因此对于来自C++、Java等背景的程序员,初次接触到JavaScript的面向对象的开发时,开始会有些不适应。而JavaScript语言本身也非常灵活,实现面向对象的方法也很多,不同的框架使用的方法也不同。
对于JavaScript的面向对象的方法和C++、Java面向对象的不同点。举个简单的类比,使用C++、Java来建房,是先有蓝图(Class),然后根据这个蓝图(Class)来建房(对象)。而JavaScript是直接建个房(Object)。如果要将个新房,就参考这个建好的房作为原型(prototype),然后复制一个对象。
Kendo UI不仅仅提供了一些好看的UI组件,而且也提供一个JavaScript构建对象,实现继承的方法,其形式接近于C++、Java的类继承方法。
使用kendo.Class.extend创建对象
首先可以创建一个新对象(注意JavaScript中没有类的概念),可以通过kendo.Class.extend 来定义。
var person = kendo.Class.extend({});
上面代码创建一个Person对象,但没有定义Person对象任何属性和方法。下面可以为Person定义一些属性和方法(函数),可以通过对象字面量的方法来定义,Javascript对象的属性或方法都是以Key:value的形式来定义。也使用this来引用对象的方法或属性。
var Person = kendo.Class.extend({firstName: ‘Not Set’,lastName: ‘Not Set’,isAPrettyCoolPerson: false,sayHello: function() {alert(“Hello! I’m “ + this.firstName + ” “ + this.lastName);}});var person = new Person();person.sayHello();