JavaScriptでマルチバイト文字列を決まった長さで省略する方法
投稿日時:
最終更新日時:2015/03/16 20:03
この記事は約 2 分で読めます。
大丈夫、あなたなら出来る!
ソーシャル・マーケティング協会 代表理事の白鳥友康です。
ブログの「続きを読む」みたいなことを、JavaScriptで実現する方法です。
デザインの都合でエリアに入力できる文字数が決まっていて
マルチバイトで○文字分みたいな切り出しをしたい場合があります。
でもマルチバイトとシングルバイトが混合している文字列の場合、
JavaScriptだと、これがなにげに難しかったりしますね。
そんなときはに役立つサンプルスクリプトです。
/**
文字列を省略する
@arg text 省略する文字列
@arg len 半角文字数で指定
@arg truncation 省略時の文字列
*/
function substr(text, len, truncation) {
var count = 0;
var str = '';
for (i=0; i
n = escape(text.charAt(i));
if (n.length < 4) count++; else count+=2;
if (count>len) {return str+truncation;}
str += text.charAt(i);
}
return text;
}
無料プレゼント
【Web担当者向け】SNS集客の全体像を55分で把握できる動画
受講料50万円で提供していた【ソーシャル・マーケティング認定コンサルタント養成講座】のエッセンスを凝縮した動画を無料プレゼントしています。
関連記事
-
-
エントリーフォーム最適化(EFO)でお問い合わせの数を増やす。その3
エントリーフォーム最適化(EFO)のポイント、前回の続きです。 目次1 ★魅力的な文章で入力を促す2 ★「クリア」ボタンは必要な…
-
-
Web手続きだけで自作曲をiTunesで配信、クリプトンが代行サービス
このサービスは、音楽業界に新しい流れを生み出すかも。 ドラマのタイアップやCM曲が売れる現状を見ても音楽は聞いてもらってなんぼ。…
-
-
facebookファンページの投稿をTwitterへのツイートに連動
facebookのほうが文字数が多いので、若干、使いにくいかもしれませんが、やりたい人はこちらを参考にどぞ。 《参考記事》NPO…
-
-
30秒ですっきり! 理系のためのオフィス系ストレッチ
パソコンを1日中使っている仕事柄ものすごーく肩がこります。 スポーツクラブに通ってはいてもそう頻繁には行けないので、 そんな時は…
-
-
日本語で学べるHTML5関連資料15個まとめ
英語が得意じゃない場合は、日本語の資料っていうのは、意外と大切ですよね。 日本語で学べるHTML5関連資料15個まとめ*二十歳街…
-
-
エントリーフォーム最適化(EFO)でお問い合わせの数を増やす。その2
前回、エントリーフォーム最適化(EFO)の大切さについてお伝えしましたが、今回は実際にどの部分を修正すれば良いのかを説明していき…
-
-
xserver のデータベースに外部から接続する方法
これハマりました。貴重な情報ありがとうございます。 《参考サイト》◯転ばぬ先の備忘録 xserver外部からのデータベース接続方…
-
-
ガンブラー(Gumblar)によるWebサイト改ざん被害の対策
世間を騒がしているガンブラーですが、FTPを使ってホームページを更新しているPCは特に注意が必要です。 まずは基本的な対策を。 …
-
-
テキストを変更するだけでそのまま使えるボタン素材いろいろ(PSDファイル付き)
お申し込みボタンはサイトの成約率に与える影響がとても大きい部分ですよね。 初心者の方が作ったサイトでも、お申し込みボタンだけは整…
-
-
なぜカカクコムの最安店に注文が殺到しないのか
「最安値ではなくてもアマゾンで購入する」 ここに消費者の興味深い心理が含まれていますね。 「利用者は未知のショップに個人情報を登…
