元商社マンによるシドニーでの戦い

シドニーでの生活、転職、仕事のことなどなど。海運業 => 総合商社 => プログラマー(Sydney)。

Javascript

キリの良いとこで文章を切り取る方法(Javascript)

2016/09/11

Javascriptで文章の文字数を制限する際に、キリの良いところで区切りたいなと思いはまってしまったので、メモしておきます。コーディング歴1年未満の素人ですので、よろしくない点等あればコメント頂けると大変助かります。

例えば、この文章を10文字で制限したい。

var str = "Hey, how are you doing?"
var words = str.split(' ')
console.log('10th character;', str.charAt(9) );  // a
console.log('10th character;', str.substr(0, 10) ); // Hey, how a

と、aできれちゃいます。

この時、areまで(単語の区切まで)表示したい時には、以下のようにできます。
var res = "";
for (var i = 0; i < words.length && res.length < 10; i++ ) {
res += words[i] + ' ';
};

console.log('res; ', res);  // Hey, how are
return res.trim(); // trim() で最後の不要なスペースを取り除いてます。

個人的に、&& res.length < 10 という条件を加えることに苦労しました。

 

-Javascript