var a = new String();
var b = new String("ジュマペール");
実際には、次のようにするのが普通です。
var a = "";
var b = "ジュマペール";
str1 = "012345";
n = str1.length; // 6
str1 = "a";
str2 = "b";
str3 = str1 + str2; // "ab"
加算と同じ記号を使い紛らわしいのですが、しょうがないですね。
str1 = "012345";
str2 = str1.charAt(2); // "2"
str3 = str1.substring(2,4); // "23"
charAt は1文字だけ切り出します。
str.charAt(n) とすると、先頭を0としてn番目の文字を切り出します。
Cでstr1[n]とするのと同じです。
ただし、Javaではchar型の値が返りますが、
JavaScriptではStringオブジェクトが返ります。
str1 = "012345";
str4 = str1.substring(2,8); // "2345"
str5 = str1.substring(-1,4); // "0123"
str6 = str1.substring(2,2); // ""
str7 = str1.substring(4,2); // "23"
引数が文字列の長さ以上の時は(文字列の長さ-1) とみなす
引数が負の場合は0とみなす
1番目の引数と2番目の引数が等しい場合は長さ0の文字列を返す
1番目の引数より2番目の引数が小さい場合は引数を入れ替える
最後のルール以外はそんなに無理は感じませんね。
最後のルールはこうするといったい何がうれしいんでしょうか。
str1 = "0123456789012345678901234";
pos1 = str1.indexOf("1"); // 1
pos2 = str1.lastIndexOf("1"); // 21
pos3 = str1.indexOf("123", 2); // 11
pos4 = str1.lastIndexOf("123", 2); // 1
以下、特殊な場合:
str1 = "0123456789012345678901234";
pos5 = str1.indexOf("a"); // -1
pos6 = str1.indexOf("1", -1); // 1
pos7 = str1.lastIndexOf("1", -1); // -1
pos8 = str1.indexOf("1", 50); // -1
pos9 = str1.lastIndexOf("1", 50); // 21
検索されなかった場合は -1 を返します。
第2引数が 0 〜 stringname.length - 1 の範囲を超えるときは、
小さい方へ外れている場合は 0 、大きい方へ外れている場合は
stringname.length - 1 とみなします。あまりリファレンス的になると面白くないので、プログラムを作ってみました。 splitメソッドと同様の機能の関数です。
function test1(form) {
var a = new Array();
//"%"で区切って配列に格納する
split(form.text1.value, "%", a);
//配列を","で繋げて表示
form.text1.value = a.join(",");
}
function split(str, deli, arr) {
var prepos = 0;
var index = 0;
var deli_length = deli.length;
//strからdeliが検索されなくなるまでループする
while((pos = str.indexOf(deli, prepos)) != -1) {
arr[index++] = str.substring(prepos, pos);
prepos = pos + deli_length;
}
arr[index] = str.substring(prepos);
}
"a%b%c"のように"%"で文字区切って入力してください。
","で区切られて返ってきます。
str1 = "abCD";
str2 = str1.toLowerCase(); // "abcd"
str3 = str1.toUpperCase(); // "ABCD"
var str1 = "第4巻の発売日は\n";
var str2 = "12月5日"
var str3 = "だよ";
document.open("text/html");
document.writeln("");
document.write(str1);
document.write(str2.bold().fontcolor("red"));
document.writeln(str3);
document.writeln("");
document.close();
<BODY>
第4巻の発売日は
<FONT COLOR="red"><B>12月5日</B></FONT>だよ
</BODY>
要するに、boldメソッドを働かせるのは <B> タグを付けるのと同じ、、、