「こんにちは、アミーゴ!」

「こんにちは、ビラーボ!」

「お会いできてうれしいです。今日は小さいですが、とても有益なレッスンです。今日は JavaScript 言語についてお話します。」

JavaScript - 1

「新しい言語? 面白いですね…」

「JavaScript は現在、インターネットのおかげで人気があります。実際、JavaScript はすべてのブラウザで実行できる唯一の言語です。Web ページにアニメーションやロジックを追加したい場合は、JavaScript を使用して実行できます。」

「JavaScript が最も人気のある言語だというのは本当ですか?」

「はい、しかし、最も人気のある「第 2 言語」であると言ったほうが正確でしょう。C++、Java、C#、および PHP のプログラマーは、Web ページを活気づけるために JavaScript で小さなスクリプトを作成する必要があります。しかし、それだけの人ははるかに少数です。 JavaScript でコードを記述してください。」

「なぜ JavaScript という名前なのでしょうか? Java に似ているように思えます。」

「実際、当初は LiveScript と呼ばれていましたが、Java が普及し始めたため、JavaScript に名前が変更されました。」

「Java と JavaScript はまったく異なる言語です。混同しないでください。」

「Java とは異なり、JavaScript にはクラスがなく、静的型指定やマルチスレッドなどはサポートされていません。Java は大規模な構築ツールのセットのようなものですが、JavaScript はスイス アーミー ナイフのようなものです。JavaScript は問題を解決するために設計されています」小さなタスクですが、Java は大規模なタスクや非常に大きなタスクを解決するために使用されます。」

「JavaScript に関するいくつかの事実を次に示します。」

「第一の事実は、JavaScript には関数があるが、クラスがないということです。」

「いくつかの関数を使用してプログラムを作成するだけです。たとえば、次のようになります。」

JavaScript
function min(a, b)
{
 return a
}
ジャワ
public static int min(int a, int b)
{
return a
}

「新しい関数は«function <name>»を使用して宣言されます。

"もう一つの例:"

JavaScript
function min(ab)
{
 return a < b ? ab;
}

function main()
{
 var s = 3;
 var t = 5;
 var min = min(s, t);
}
ジャワ
public static int min(int a, int b)
{
 return a < b ? ab;
}

public static void main()
{
 int s = 3;
 int t = 5;
 int min = min(s,t);
}

「2 番目の事実は、JavaScript には変数がありますが、それらの変数には型がないということです。」

「JavaScript は動的に型指定される言語です。つまり、変数には実際には型がありません。どの変数にも、任意の型の値を割り当てることができます (値には型があります)。例:」

JavaScript
function main()
{
 var s = "Bender";
 var k = 1;
 var n = s.length;
}
ジャワ
public static void main()
{
 String s ="Bender";
 int k = 1;
 int n = s.length();
}

「しかし、動的型付けでは実行時エラーのリスクが高まります。」

JavaScript
function main()
{
 var s = "Bender";
 var k = 1;
 var n = k.length;
}
ジャワ
public static void main()
{
 String s ="Bender";
 int k = 1;
 int n = k.length();
}

「上の例では、s (文字列) の代わりに変数 k (整数) を使用しました。Java では、エラーはコンパイル時に検出されますが、JavaScript では、コードが後で実行されるまで検出されません。が走っています。"

「JavaScript で変数を宣言したい場合は、«var <name>» と記述する必要があります。変数の型はなく、メソッド/関数やその引数の型もありません。」

「JavaScript には厳格なルールがほとんどなく、多くの無秩序が存在します。」

「5 つの引数を指定して関数を宣言し、2 つを指定して呼び出すことができます。残りは null になります。2 つの引数を指定して関数を宣言し、呼び出すときに 5 つを渡します。3 つは単純に破棄されます。最小限の制御しかありません」エラー、タイプミス、変更を徹底的にチェックします。」

「3 番目の事実は、JavaScript には if、for、while ステートメントがあるということです。」

「JavaScript には if、for、while があります。これは素晴らしいニュースです。次の例を見てください。」

JavaScript
function main()
{
 var s = "Bender";

 var result = "";

 for(var i = 0; i < s.length; i++)
 {
  result += s[i] + "";
 }
 if(result.length > 10)
 {
  alert (result);
 }
 else
 {
  while(result.length <= 10)
  {
   result += " ";
  }
  alert(result);
 }
}
ジャワ
public static void main()
{
 String s = "Bender";
 char[] s2 = s.toCharArray();
 String result = "";

 for(int i = 0; i < s.length(); i++)
 {
  result += s2[i] + "";
 }
 if(result.length() > 10)
 {
  System.out.println(result);
 }
 else
 {
  while (result.length() <= 10)
  {
   result += " ";
  }
  System.out.println(result);
 }
}

「それらはかなり似ています。JavaScript で書かれたコードがどのように動作するか理解できると思います。」

「あなたの楽観主義は良いですね。」

「4 番目の事実は、JavaScript が try-catch-finally ブロックをサポートしているということです」

JavaScriptには例外 ( Error ) がありますが、それは良いことです。チェック例外はなく、 RuntimeExceptionに似た非チェック例外のみです。try -catch-finally構造は Java と同じように機能します。例:」

JavaScript
function main()
{
 try
 {
  var s = null;
  var n = s.length;
 }
 catch(e)
 {
  alert(e);
 }
}
ジャワ
public static void main()
{
 try
 {
  String s = null;
  int n = s.length();
 }
 catch(Exception e)
 {
  System.out.println(e);
 }
}

「文字列の長さを取得しようとすると、変数が null であるため例外がスローされます。」

「5 番目の事実は、JavaScript には配列があるということです」

「良いニュース: JavaScript には配列があります。悪いニュース: リストやコレクションはありません。」

「もう 1 つの良いニュースは、配列は新しい要素が追加されると動的に拡大し、要素が削除されると減少するということです。これは配列とリストのハイブリッドに似ています。

例えば:

JavaScript
function main()
{
 var m = [1, 3, 18, 45, 'c', "roma", null];
 alert(m.length); // 7

 m.push("end");
 alert(m.length); // 8

 for (var i = 0; i < m.length; i++)
 {
  alert(m[i]);
 }
}
ジャワ
public static void main()
{
 List m = Arrays.asList(1, 3, 18, 45,'c', "roma", null);
 System.out.println(m.size()); // 7

 m.add("end");
 System.out.println(m.size()); // 8

 for (int i = 0; i < m.size(); i++)
 {
  System.out.println(m.get(i));
 }
}

「配列宣言にある角括弧は何ですか?」

「それがまさに配列宣言です。配列を宣言するには、角括弧を書く必要があります。次に、角括弧の間に配列の要素をリストします。空の配列は、括弧のペアで簡単に宣言します。」

var m = [];

「6 番目の事実は、JavaScript にはオブジェクトがあるということです」

「JavaScript にはオブジェクトがあります。実際、JavaScript ではプリミティブ型も含めてすべてがオブジェクトです。各オブジェクトはキーと値のペアのセットとして表されます。大まかに言えば、すべての JavaScript オブジェクトは Java の HashMap に相当します。以下にその例を示します」オブジェクト宣言:"

JavaScript
function main()
{
 var m = {
  first_name : "Bill",
  last_name: "Gates",
  age: 54,
  weight: 67,
 children: ["Emma", "Catrin"],
 wife: {
  first_name : "Melinda",
  last_name: "Gates",
  age: 45,
  }
};

 alert(m.first_name); // Bill
 alert(m.age); // 54
 alert(m.wife.first_name); // Melinda

 m.age = 45;
 m.age++;
 m["first_name"] = "Stive";
 m["wife"] = null;
ジャワ
public static void main()
{
 HashMap m = new HashMap();
 m.put("first_name", "Bill");
 m.put("last_name", "Gates");
 m.put("age", 54);
 m.put("weight", 67);

 String[] children = {"Emma", "Catrin"};
 m.put("children", children);

 HashMap wife = new HashMap();
 wife.put("first_name", "Melinda");
 wife.put("last_name", "Gates");
 wife.put("age", 45);
 m.put("wife", wife);

 System.out.println(m.get("first_name"));
 System.out.println(m.get("age"));

 HashMap w = ((HashMap)m.get("wife"));
 System.out.println(w.get("first_name")));

 m.put("age", 45);
 m.put("age", ((Integer)m.get("age")) + 1);
 m.put("first_name", "Stive");
 m.put("wife", null);

「新しいオブジェクトを作成するには、2 つの中括弧 «{}» を記述するだけです。」

「中かっこ内では、オブジェクト データを次の形式で指定できます: «キー、コロン、値、カンマ»。」

「オブジェクトフィールドには次の 2 つの方法でアクセスできます。」

同等のステートメント
m.age = 45;
m[“age”] = 45;

「指定されたフィールドが存在しない場合は、作成されます。」

「リリーフバルブが過負荷か何かです。休憩したほうがいいと思います。」

「7 番目の事実は、JavaScript は Web ページ内で動作するために作成されたということです。」