目次
工作HardwareHubからのお知らせ
JavaScriptにおける文字列はオブジェクトではありませんが、下記のようにメソッド呼び出しなどができます。
この背景としては、裏で文字列のラッパークラスStringのインスタンスが自動で生成されそのメソッドが呼び出されている、というのがあります。
なお、他にも数値にはNumberクラス、真偽値にはBooleanクラスというラッパークラスがあります。基本データ型にラップクラスが用意されている点は、Javaとよく似ています。
sample.js
var str = "This is a string."
// var str = new String("This is a string."); // としても同じです
// インデックスによるアクセス
console.log(str[str.length-1]); // 実装によってはエラー (非推奨)
console.log(str.charAt(str.length-1)); //推奨
// 部分文字列
console.log(str.substr(1,2)); // substr(fromIndex, subStrLen)
// 文字列の場所を検索
console.log(str.indexOf('his')); // 前方から検索して最初に見つかった位置
console.log(str.lastIndexOf('his')); // 後方から検索して最初に見つかった位置
console.log(str.indexOf('hoge')); // 見つからなければ -1 が返される
// 文字列を指定した文字列で分割
console.log(str.split(' '));
// 小文字 ←→ 大文字に変換
console.log(str.toLowerCase());
console.log(str.toUpperCase());
// 数値を文字列に変換
var num = 128;
str = num.toString();
console.log(str);
// 文字列を数値に変換
console.log(parseInt("128"));
console.log(parseInt("128.8"));
console.log(parseFloat("128.8"));
// URI エンコーディング
str = ' %|"#&$+/@!;:,.()-*~_';
console.log(encodeURI(str)); //=> %20%25%7C%22#&$+/@!;:,.()-*~_
console.log(encodeURIComponent(str)); //=> %20%25%7C%22%23%26%24%2B%2F%40!%3B%3A%2C.()-*~_
// URI デコーディング
console.log(decodeURI(encodeURI(str))); //=>「 %|"#&$+/@!;:,.()-*~_」
console.log(decodeURIComponent(encodeURIComponent(str))); //=>「 %|"#&$+/@!;:,.()-*~_」
実行例
$ node sample.js
.
.
hi
1
1
-1
[ 'This', 'is', 'a', 'string.' ]
this is a string.
THIS IS A STRING.
128
128
128
128.8
%20%25%7C%22#&$+/@!;:,.()-*~_
%20%25%7C%22%23%26%24%2B%2F%40!%3B%3A%2C.()-*~_
%|"#&$+/@!;:,.()-*~_
%|"#&$+/@!;:,.()-*~_
関連記事
- JavaScriptにおける関数定義function文で定義します。 sample.js function fact(n) { return (n==0) ? 1 : n*fact(n-1); } for(var i=0; i<7; ++i) console.log(i +'!='+ fact(i)); 実行例 $ node sample.js 0!=1 1!=1 2!=2 3!=6 4!=24 5!=120 6!=...
- Date オブジェクトの使用例 (JavaScript)コンストラクタ // 現在時刻 var d = new Date(); console.log(d); // システムのタイムゾーンに変換して出力 (この例では JST) //=> Thu Jan 29 2015 23:45:21 GMT+0900 (東京 (標準時)) // システムのタイムゾーン (以下の例では JST) での日付指定 d = new Date('2000/01/01')...
- AngularJS が提供するユーティリティAngularJS では JavaScript の言語仕様として不足のある汎用的な処理を補うためにユーティリティが提供されています。代表的なものをコード例とともに列挙します。公式ドキュメントはこちらです。 <!DOCTYPE html> <html lang="ja" ng-app> <head> <meta charset="utf-8"> ...
- JavaScript のグラフ描画ツール Dygraph の使用例ダウンロード こちらのページから dygraph-combined.js をダウンロードします。 サンプルコード チュートリアルより。 <html> <head> <script type="text
- サービス (AngularJS)AngularJS のビルトインサービスのうち代表的なものをコード例とともに列挙します。公式ドキュメントはこちらです。 <!DOCTYPE html> <html lang="ja" ng-app="myApp"> <head> <meta charset="utf-8"> <script src="angular.min.js">...