嗯,我搜索,沒有找到一種方法來調用一個原型方法沒有實例化另一個對象。我發現怎麼做:JS - 調用靜態方法與原型
var x = new X();
X.MyMethod();
我真正需要知道的是,如果有一種方法可以做到像jQuery的,做這樣的事情:
var x = "mystring";
x.MyMethod();
在jQuery UI的,我們稱之爲.draggable (),.resizable()在選定的對象中。我能做同樣的事嗎?
嗯,我搜索,沒有找到一種方法來調用一個原型方法沒有實例化另一個對象。我發現怎麼做:JS - 調用靜態方法與原型
var x = new X();
X.MyMethod();
我真正需要知道的是,如果有一種方法可以做到像jQuery的,做這樣的事情:
var x = "mystring";
x.MyMethod();
在jQuery UI的,我們稱之爲.draggable (),.resizable()在選定的對象中。我能做同樣的事嗎?
你想擴展String
的原型方法嗎?你需要做這樣的事情:
String.prototype.MyMethod = function() {
console.log("MyMethod()");
};
var x = "mystring";
x.MyMethod();
參見:How does JavaScript .prototype work?
或者,如果你想成爲真正的聰明,學習:MDN Reference: Define Property
會有我的方式來獲取和操縱我的lambda函數中傳遞的字符串的內容? –
是的。在該函數內部,變量'this'將返回'string'的值,並且您可以隨意操作它 –
@sxnine - 字符串是不可變的,所以您不能在方法中更改當前字符串對象。您可以創建一個新字符串並從方法返回該字符串,但不能更改當前字符串對象。 – jfriend00
我不知道你正在嘗試做的。沒有字符串,你無法真正調用字符串方法。 –
您是否試圖用自己的方法擴展原生'String'原型? –