Stringオブジェクト

Stringオブジェクト

  • 文字列を「Stringオブジェクト」という特別なオブジェクトとして扱うことができる
  • Stringオブジェクトのプロパティは「length」


文字列リテラルとして記述

<script>
var str1 = 'Stringオブジェクト';
</script>


new演算子とStringコンストラクタを使って記述

<script>
var str1 = new String ( 'Stringオブジェクト' );
</script>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Stringオブジェクトの生成</title>
</head>
<body>
<script>
var str1 = new String('Stringオブジェクト');
  document.write('<h1>' + str1 + '</h1>');
  document.write('<h2>長さ:' + str1.length + '</h2>');
</script>
</body>
</html>


メソッド名 説明
charAt 指定した位置の文字を取り出す
charCodeAt 指定した位置の文字の文字コードを戻す
indexOf 文字列の位置を調べる
split 文字列を配列に変換する
substring 指定した範囲の文字列の途中を取り出す
toLowerCase 半角英字を小文字に変換する
toUpperCase 半角英字を大文字に変換する

文字列リテラルに対してメソッドを実行する
  • 文字列のリテラルに対して、直接メソッドを実行したり、プロパティにアクセスしたりできます


文字列リテラルの3文字目を取り出す

<script>
var char1 = '文字列リテラル'.charAt(2);
</script>


文字列リテラルの長さを求める

<script>
var len = '文字列リテラル'.length;
</script>
文字列を1文字ずつ取り出す
  • 「charAt」は、指定した位置の文字を戻す
  • 先頭の文字位置を「0」として数えます
  • したがって最後の文字は「lengthプロパティの値 - 1」となります
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Stringオブジェクトの生成</title>
</head>
<body>
<script>
var i;
var str2 = new String('文字列を1文字ずつ取り出す');
for (i = 0; i <= (str2.length - 1); i++){
  document.write('<h2>' + str2.charAt(i) + '</h2>');
}	
</script>
</body>
</html>

※「var i = 0; i <= (str2.length - 1); i++」と記述することも可能


まとめ

  • Stringオブジェクトは、Stringコンストラクタで生成する
  • 文字列の長さを求める、lengthプロパティ
  • 指定した位置の文字を取り出す、charAtメソッド

linkメソッドとfontsizeメソッド

  • 「Stringオブジェクト」のメソッド
linkメソッド
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>リンクを設定するメソッド</title>
</head>
<body>
<script>
var url = 'http://google.co.jp';
var text = 'Google'.link(url) + 'で検索';
  document.write('<h1>' + text + '</h1>');
</script>
</body>
</html>
fontsizeメソッド
  • フォントサイズを段階的に変化させる
  • 現在では、fontsizeを要素に直接記述することは禁止になっているため利用されることはありません(あくまでも、for文の出力の練習)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>文字を設定するメソッド</title>
</head>
<body>
<script>
var i;
var str1 = 'Stringオブジェクトのメソッド';
for (i = 1; i <= 7; i++){
  document.write('<p>' + str1.fontsize(i) + '</p>');
}
</script>
</body>
</html>

まとめ

  • linkメソッドを使用すると、文字列にリンクを設定できる
  • fontsizeメソッドを使用すると、フォントのサイズを変更できる