


So implementieren Sie die js-Klasse mithilfe der tangram.js-Bibliothek
Dieser Artikel stellt hauptsächlich die Art und Weise vor, wie die tangram.js-Bibliothek JS-Klassen implementiert, und analysiert die Erstellung, Vererbung und andere verwandte Betriebstechniken der tangram.js-Bibliotheksimplementierungsklasse in Form von Beispielen
Dieser Artikel Das Beispiel beschreibt, wie die tangram.js-Bibliothek js-Klassen implementiert. Teilen Sie es als Referenz mit allen:
Der vorherige Artikel //www.jb51.net/article/25781.htm gab eine detailliertere Einführung in die tangram.js-Bibliothek analysiert Tangram anhand von Beispielen, wie die .js-Bibliothek js-Klassen implementiert. Der Code lautet wie folgt:
/* * Tangram * Copyright 2010 Baidu Inc. All rights reserved. * * @author: meizz * @namespace: baidu.lang.createClass * @version: 1.6.0 */ ///import baidu.lang; ///import baidu.lang.Class; ///import baidu.lang.Event; /** * 创建一个类,包括创造类的构造器、继承基类Class * @name baidu.lang.createClass * @function * @grammar baidu.lang.createClass(constructor[, options]) * @param {Function} constructor 类的构造器函数 * @param {Object} [options] * @config {string} [type] 类名 * @config {Function} [superClass] 父类,默认为baidu.lang.Class * @version 1.2 * @remark * 使用createClass能方便的创建一个带有继承关系的类。同时会为返回的类对象添加extend方法,使用obj.extend({});可以方便的扩展原型链上的方法和属性 * @see baidu.lang.Class,baidu.lang.inherits * * @returns {Object} 一个类对象 */ baidu.lang.createClass = /**@function*/function(constructor, options) { options = options || {}; var superClass = options.superClass || baidu.lang.Class; // 创建新类的真构造器函数 var fn = function(){ var me = this; // 20101030 某类在添加该属性控制时,guid将不在全局instances里控制 options.decontrolled && (me.__decontrolled = true); // 继承父类的构造器 superClass.apply(me, arguments); // 全局配置 for (i in fn.options) me[i] = fn.options[i]; constructor.apply(me, arguments); for (var i=0, reg=fn["\x06r"]; reg && i<reg.length; i++) { reg[i].apply(me, arguments); } }; // [TODO delete 2013] 放置全局配置,这个全局配置可以直接写到类里面 fn.options = options.options || {}; var C = function(){}, cp = constructor.prototype; C.prototype = superClass.prototype; // 继承父类的原型(prototype)链 var fp = fn.prototype = new C(); // 继承传参进来的构造器的 prototype 不会丢 for (var i in cp) fp[i] = cp[i]; // 20111122 原className参数改名为type var type = options.className || options.type; typeof type == "string" && (fp.__type = type); // 修正这种继承方式带来的 constructor 混乱的问题 fp.constructor = cp.constructor; // 给类扩展出一个静态方法,以代替 baidu.object.extend() fn.extend = function(json){ for (var i in json) { fn.prototype[i] = json[i]; } return fn; // 这个静态方法也返回类对象本身 }; return fn; };
Das Obige habe ich für alle zusammengestellt. Ich hoffe, dass es in Zukunft für alle hilfreich sein wird.
Verwandte Artikel:
Probleme mit domänenübergreifenden Ressourcenfehlern von React Native
Installieren der neuesten Version von npm in nodejs (ausführliches Tutorial)
So implementieren Sie die Entprellung der Funktion in js (ausführliches Tutorial)
So markieren Sie die Datensatz-Scroll-Position im Vue-Scroller
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die js-Klasse mithilfe der tangram.js-Bibliothek. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In Artikel werden JavaScript -Bibliotheken erstellt, veröffentlicht und aufrechterhalten und konzentriert sich auf Planung, Entwicklung, Testen, Dokumentation und Werbestrategien.

In dem Artikel werden Strategien zur Optimierung der JavaScript -Leistung in Browsern erörtert, wobei der Schwerpunkt auf die Reduzierung der Ausführungszeit und die Minimierung der Auswirkungen auf die Lastgeschwindigkeit der Seite wird.

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

In dem Artikel werden effektives JavaScript -Debuggen mithilfe von Browser -Entwickler -Tools, der Schwerpunkt auf dem Festlegen von Haltepunkten, der Konsole und der Analyse der Leistung erörtert.

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

In dem Artikel wird erläutert, wie Quellkarten zum Debuggen von JavaScript verwendet werden, indem er auf den ursprünglichen Code zurückgegeben wird. Es wird erläutert, dass Quellenkarten aktiviert, Breakpoints eingestellt und Tools wie Chrome Devtools und WebPack verwendet werden.

Eingehende Diskussion der Ursachen des Unterschieds in der Konsole.log-Ausgabe. In diesem Artikel wird die Unterschiede in den Ausgabeergebnissen der Konsolenfunktion in einem Code analysiert und die Gründe dafür erläutert. � ...

Wie fusioniere ich Array -Elemente mit derselben ID in ein Objekt in JavaScript? Bei der Verarbeitung von Daten begegnen wir häufig die Notwendigkeit, dieselbe ID zu haben ...
