2017-02-14 6 views
-3

Ich habe dieses Problem im Versuch zu lösen, aber ich habe eine harte Zeit bekommen die Ausgabe, die ich will. Das habe ich.Schreiben Sie eine Funktion, die die Anzahl der einzelnen Wörter in einem gegebenen String-Argument zählt

var stringLength = []; 
function wordCount(text) { 
     stringLength.push(text.split(' ').join(' , ')) 
     console.log(stringLength.length) 
    } 

wordCount('All work and no play makes Jack a dull boy'); 

Dies sollte "10" zurückgeben. Kann mir jemand sagen, wo ich falsch liege?

+0

'Dies sollte zurückkehren‚10'' ... warum? und was "kehrt" es zurück? –

+0

Warum ist 'stringLength' ein Array? – nnnnnn

Antwort

4

Sie teilen es auf, aber dann verbinden Sie sie alle wieder zusammen .... so bildet text.split(' ') ein Array auf einzelne Wörter, aber dann fügt das .join(' , ') alle Wörter zusammen in eine einzige Zeichenfolge (getrennt durch Kommata)

Es sollte einfach sein:

function wordCount(text) { 
    return text.split(' ').length 
} 
3

Sie müssen nur auf die Räume aufgeteilt (' '), das eine Reihe von Wörtern zurückkehren, dass Sie die length Eigenschaft von bekommen:

function wordCount(text) { 
 
    return text.split(' ').length; 
 
} 
 

 
var count = wordCount('All work and no play makes Jack a dull boy'); //10 
 
console.log(count);

Verwandte Themen