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万円で提供していた【ソーシャル・マーケティング認定コンサルタント養成講座】のエッセンスを凝縮した動画を無料プレゼントしています。
関連記事
-
-
XREAで独自ドメインを設定する方法
★XREAで独自ドメインを設定する方法 VALUE-DOMAIN で取得したドメインを、XREAに設定する方法です。 まだドメイ…
-
-
Facebookカバー画像もPhotoshop無しで簡単に作れる
Facebookのカバー画像は、あなたの魅力を伝えるのに効果的。 通常は、Photoshopなどの画像編集ソフトを使って作成する…
-
-
★マーケティングの師匠がセミナーを開催します
インターネットマーケティングというとちょっと小難しい感じがしますが、 要するに 《ホームページの売上をアップする方法》 のことで…
-
-
ホームページ作成用語集:JavaScript(ジャバスクリプト)
ホームページに様々な機能や動きを加えるために使われるプログラム言語。HTMLファイルの中に直接記述したり、別途作成した.jsファ…
-
-
本に出会う本屋
ボッサブックスhttp://www.bossabooks.jp/ メタファーを使ったインターフェイスは良くあるし、この手のものは…
-
-
画像置換(text-indent)で出る点線を消したい
text-indent:-9999px; を使った画像置換はFirefox だとクリックした時に画面外へ点線が出てしまう。そんな…
-
-
Googleがついに順位決定に表示速度を使い始めた。
日々変化を続けるSEO対策。 今度はページの表示速度が影響を与えるようになりました。表示速度 1.4秒が目安みたいです。 元々、…
-
-
重要な仕事は1日1つまでにする。
そういや調子の良いときはこれでした。参考になりますね。 自分をガッツリ集中させるための8つのセルフマネジメント術http://w…
-
-
一億円の価値がある輪ゴム
写真をご覧ください。はい。ただの輪ゴムです(笑) 一億円で売っている輪ゴムではなく、一億円の価値を生み出す輪ゴムです。 では、な…
-
-
tableレイアウトとCSSレイアウト
この業界にお世話になってから10年が経ちますが、HTMLのコーディング方法は、かなり変化してきました。 最初は、tableタグを…
