私は JavaScript での文字列操作があまり得意ではないので、単語を切り取らずに文字列を短くするにはどうしたらよいか知りたいです。substring の使い方は知っていますが、indexOf などはあまりよく知りません。
次のような文字列があったとします。
text = "this is a long string I cant display"
10 文字に短縮したいのですが、スペースで終わらない場合は単語を終了します。文字列変数が次のようになるのは望ましくありません。
「これは長い文字列なので、無視できません」
スペースが出現するまで単語を終わらせたい。
ベストアンサー1
私の理解が正しければ、文字列を特定の長さに短縮したい(たとえば"The quick brown fox jumps over the lazy dog"
、単語を切り取らずに 6 文字に短縮する)ということですね。
このような場合は、次のようなことを試してください。
var yourString = "The quick brown fox jumps over the lazy dog"; //replace with your string.
var maxLength = 6 // maximum number of characters to extract
//trim the string to the maximum length
var trimmedString = yourString.substr(0, maxLength);
//re-trim if we are in the middle of a word
trimmedString = trimmedString.substr(0, Math.min(trimmedString.length, trimmedString.lastIndexOf(" ")))