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万円で提供していた【ソーシャル・マーケティング認定コンサルタント養成講座】のエッセンスを凝縮した動画を無料プレゼントしています。
関連記事
-
-
Facebookだけじゃダメ。他のメディアも使わないと!
Facebookを活用して集客することはもちろん可能ですが、Facebookは他のメディアと組み合わせてこそ、その本領を発揮しま…
-
-
3大ブラウザのJavaScript実行速度について
昨日、各ブラウザの特徴を説明しましたが、 IE、Firefox、Chrome 3大ブラウザ対決 JavaScriptの実行速度に…
-
-
素人でも簡単にロゴが作成できる便利なサービス
何かのサービスを立ち上げるの時には、ロゴが必要になることが多いので、こういったサービスは嬉しいですね。ある程度のデザインセンスは…
-
-
同じ本を2冊買ってしまう悩みをお持ちの方にオススメです
私は本を読むの好きで、自宅には未読の本の棚があるのですが、困ったことが1つあります。 それは何冊も同じ本を買ってしまうこと 未読…
-
-
ホームページ作成用語集:HTTP(エイチティーティーピー)
HyperText Transfer Protocolの略。HTMLなどによって書かれたハイパーテキストを送受信するために使われ…
-
-
モニターは消耗品
下北沢を歩いていたら、中古屋でiiyamaのモニタが安く売っていたので買ってみた。 17インチで7980円。 事前に値段を調べて…
-
-
IEの独占が崩れてきた
Net Applicationsの調査によると2010年5月の時点でIEのシェアが6割を切ったようです。 Firefox、Chr…
-
-
tableレイアウトとCSSレイアウト
この業界にお世話になってから10年が経ちますが、HTMLのコーディング方法は、かなり変化してきました。 最初は、tableタグを…
-
-
最も売れるランディングページを作れる人は誰か?
ここ数ヶ月間、ちょこちょことランディングページの調整をさせていただいているクライアント様から、また販売実績のご報告をいただきまし…
-
-
IE5.5, IE6, IE7, IE8の確認が同時にできる -IETester
ホームページを公開するときに大切なのが、複数のブラウザで表示を確認すること。 Internet ExplorerFirefoxG…
