“嗨,阿米戈!”

“嗨,比拉博!”

“很高兴见到你。今天我们有一个小但非常有用的课程。今天我将向你介绍 JavaScript 语言。”

JavaScript - 1

“一种新的语言?多么有趣……”

“由于 Internet,JavaScript 目前很流行。事实是它是所有浏览器都可以执行的唯一语言。如果你想在网页中添加动画或逻辑,那么你可以用 JavaScript 来完成。”

“JavaScript 真的是最流行的语言吗?”

“是的,但更准确地说,它是最流行的‘第二语言’。C++、Java、C# 和 PHP 程序员需要用 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);
}

“第二个事实是 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();
}

“在上面的示例中,我们使用了变量 k(整数)而不是 s(字符串)。在 Java 中,错误会在编译时检测到,但在 JavaScript 中,直到稍后代码时才会被捕获在跑。”

“如果你想在 JavaScript 中声明一个变量,你需要写 «var <name>»。没有变量类型,也没有方法/函数或它们的参数的类型。”

“JavaScript 几乎没有严格的规则,而且非常混乱。”

“你可以用 5 个参数声明一个函数,然后用两个参数调用它——其余的将只是 null。你可以用两个参数声明一个函数,并在调用它时传递五个参数。三个参数将被简单地丢弃。控制很少错误、拼写错误和更改。”

“第三个事实是 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 编写的代码是如何工作的。”

“你的乐观很好。”

“第四个事实是 JavaScript 支持 try-catch-finally 块”

JavaScript有异常(错误),这很好。它没有检查异常,只有类似于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);
 }
}

“当我们试图获取字符串的长度时,由于变量为空,将抛出异常。”

“第五个事实是 JavaScript 有数组”

“好消息:JavaScript 有数组。坏消息:没有列表或集合。”

“另一个好消息是,数组可以在添加新元素时动态扩展,并在删除元素时动态减少。它更像是数组和列表的混合体。

例如:

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 = [];

“第六个事实是 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);

“要创建一个新对象,您只需编写两个大括号:«{}»。”

“在大括号内,您可以按以下格式指定对象数据:«键、冒号、值、逗号»。”

“可以通过两种方式访问​​对象字段:”

等效语句
m.age = 45;
m[“age”] = 45;

“如果指定的字段不存在,则会创建它。”

“我的泄压阀超载了或什么的。我想我们应该休息一下。”

“第七个事实是,JavaScript 是为在网页内部工作而创建的。”