重複の可能性:
Javascript オブジェクトのコンストラクター
javascriptでクラスを作成する方法を学ぼうとしています。私はそれを理解するのが非常に困難であることがわかりました。
ここで、c# や他のプログラミング言語でできるように、javascript でコンストラクターを作成できるかどうかを知りたいです。
私はいくつかのことを試しました:
方法 1:
function SiteProfile(_url) {
this.url = "";
this.name = this.ExtractNameFromURL();
}
SiteProfile.prototype.ExtractNameFromURL = function () {
var firstDOT = this.url.indexOf(".");
var secondDOT = this.url.indexOf(".", firstDOT + 1);
var theName = "";
for (var i = firstDOT + 1; i < secondDOT; i++) {
theName += this.url[i];
}
return theName;
}
方法 2:
function Site() {
this.url = "";
this.name = "";
this.Site = function (_url) {
this.url = _url;
this.name = this.ExtractNameFromURL();
}
this.ExtractNameFromURL = function () {
var firstDOT = this.url.indexOf(".");
var secondDOT = this.url.indexOf(".", firstDOT + 1);
var theName = "";
for (var i = firstDOT + 1; i < secondDOT; i++) {
theName += this.url[i];
}
return theName;
}
}
どちらのクラスも URL を受け取り、www なしで彼から名前を取得する必要があります。または.com
クラスを設計できるかどうか、次のようにインスタンスを作成できるかどうかを知りたい:
var site = new SiteProfile("www.google.co.il");
document.write(site.name); // becuse, this do nothing
(私の英語でごめんなさい)