2016-03-19 50 views
0

我正在嘗試爲已命名爲'shout'的字符串聲明一個新方法。我希望它將任何字符串更改爲所有大寫字母,最後加上5個感嘆號。這段代碼有效,但僅限於我在if語句中使用的特定字符串。在原型上聲明一個新方法

String.prototype.shout = function() { 
    if('string' === 'string') { 
     console.log('string!!!!!'.toUpperCase()); 
    } 
} 
+2

什麼是'如果( '串' === '串')'應該做的事情?這總是如此...... – Tomalak

回答

0

你需要引用「這個」對象在代碼:

String.prototype.shout = function() { 
    return this.toUpperCase() + '!!!!!'; 
} 

使用「本」將使它在任何對點的左側,在通話時間工作(。)

yourString.shout() // works on your string! 

工作jsBIN:https://jsbin.com/jepayu/edit?js,console

1

(重點煤礦)

我希望它變化任何字符串中,並在最後5個驚歎號全部大寫字母的字符串。

字符串在Javascript中是不可變的。你不能改變它們。你可以製作一個新的並返回它。

String.prototype.shout = function() { 
    return this.toUpperCase() + '!!!!!'; 
}; 

console.log('hello'.shout());