ທີ່ປະກອບວິຊາ ECMAScript

请使用 var 运算符声明变量。

变量名需要遵守一些简单的规则。

声明变量

在上一节中我们讲解过,ECMAScript 中的变量是用 var 运算符(variable 的缩写)加变量名定义的。例如:

var test = "hi";

在这个例子中,声明了变量 test,并把它的值初始化为 "hi"(字符串)。由于 ECMAScript 是弱类型的,所以解释程序会为 test 自动创建一个字符串值,ບໍ່ຈະຕ້ອງລະບຸຊື່ສຽງທີ່ຈະມີຄວາມຄິດຫລື

ສາມາດລະບຸຊື່ປະກອບຫນຶ່ງຫລືຫລາຍຫນັງດ້ວຍ var ດຽວກັນ:

var test1 = "hi", test2 = "hello";

ລາຍການກ່ອນນີ້ລະບຸຊື່ປະກອບ test1 ທີ່ມີຄວາມຄິດຄື "hi", ແລະລະບຸຊື່ປະກອບ test2 ທີ່ມີຄວາມຄິດຄ� "hello".

ບໍ່ດັ່ງນັ້ນບໍ່ຈະຕ້ອງມີຊື່ສຽງທີ່ຄືກັນສຳລັບຊື່ປະກອບທີ່ຖືກລະບຸດ້ວຍ var ດຽວກັນຫລືນັ້ນ:

var test = "hi", age = 25;

ບົດການນີ້ບໍ່ພຽງແຕ່ລະບຸ test (ຫລືອີກຄັ້ງ) ແຕ່ຍັງລະບຸ age ແລະລະບຸມັນໃຫ້ມີຄວາມຄິດຂອງ 25. ເຖິງວ່າ test ແລະ age ແມ່ນມີຊື່ສຽງທີ່ຕ່າງກັນ, ພວກມັນຍັງມີຄວາມຖືກຕ້ອງໃນ ECMAScript.

ບໍ່ຄືກັບ Javaບໍ່ຈະຕ້ອງລະບຸຄວາມຄິດຫລືຈຳນວນຕົວຕອນ(ພວກມັນແມ່ນຖືກລະບຸຄວາມຄິດຫລືຈຳນວນຕົວຕອນຫລືນັ້ນພາຍໃນການຫລັງການ, ຈະປຶກສາຫລືນັ້ນຕໍ່ມາ). ແຕ່ວ່າການລະບຸຄວາມຄິດຫລືຈຳນວນຕົວຕອນນີ້ຍັງມີຄວາມຖືກຕ້ອງ:

var test;

ບໍ່ຄືກັບ Javaສາມາດປະກອບຄວາມຄິດຫລືຈຳນວນຕົວຕອນຫລືນັ້ນຫລືນັ້ນຈະເປັນປະສິດທິພາບຂອງປະກອບຄວນທີ່ບໍ່ມີຮູບແບບ. ເວັລວ່າຈະສາມາດລະບຸຄວາມຄິດຂອງປະກອບຄວນໃຫ້ເປັນຄຳສັບສຽງຫລືຈຳນວນຕົວຕອນຫລືນັ້ນ:

var test = "hi";
alert(test);
test = 55;
alert(test);

ລາຍການນີ້ຈະອອກອາກາດຄຳສັບສຽງຫລືຈຳນວນຕົວຕອນຢ່າງບໍ່ມີບັນຫາ. ແຕ່ວ່າພາຍໃນການນໍາໃຊ້ປະກອບຄວນມີກົດລະບຽບການປັບປຸງການຫລັງການຂອງຄວນຈະຕ້ອງປະຕິບັດຕາມຄວາມຄິດທີ່ຈະມີຄວາມຄິດຄືກັນກັບຄວາມຄິດຂອງຄວາມຄິດ.

ຊື່ປະກອບຄວນ

ຊື່ປະກອບຕ້ອງປະຕິບັດຕາມກົດລະບຽບທີ່ງາຍດາຍສອງຫນັງ:

  • ຄຳສັບສຽງທຳອິດຕົວຕອນຕ້ອງເປັນຄຳສັບສຽງຫລື_ຫລື$
  • ຄຳສັບສຽງທີ່ເຫຼືອສາມາດເປັນຜູ້ຊຶ່ງຫົວຕົວ_ຫລື$ຫລືຄຳສັບສຽງຫລືຈຳນວນຕົວຕອນ

ຊື່ປະກອບທີ່ຢູ່ໃຫ້ແມ່ນມີຄວາມຖືກຕ້ອງ:

var test;
var $test;
var $1;
var _$te$t2;

ກົດລະບຽບຊື່ປະກອບທີ່ມີຊື່ສຽງ

ພຽງແຕ່ຍ້ອນວ່າຄຳສັບສັນຊື່ປະກອບຢ່າງຖືກຕ້ອງບໍ່ໄດ້ຫມາຍວ່າຈະຕ້ອງໃຊ້ພວກມັນ. ຊື່ປະກອບຄວນປະຕິບັດຕາມກົດລະບຽບຊື່ປະກອບທີ່ມີຊື່ສຽງຫລາຍຫນັງນັ້ນ:

Camel 标记法

首字母是小写的,接下来的字母都以大写字符开头。例如:

var myTestValue = 0, mySecondValue = "hi";

Pascal 标记法

首字母是大写的,接下来的字母都以大写字符开头。例如:

var MyTestValue = 0, MySecondValue = "hi";

匈牙利类型标记法

在以 Pascal 标记法命名的变量前附加一个小写字母(或小写字母序列),说明该变量的类型。例如,i 表示整数,s 表示字符串,如下所示“

var iMyTestValue = 0, sMySecondValue = "hi";

本教程采用了这些前缀,以使示例代码更易阅读:

ຊະນິດ ຫົວຂໍ້ ຕົວຢ່າງ
ຈຳນວນ a aValues
ບັນດາບາງ b bFound
ຈຳນວນຕອນ (ໂຕກິດ) f fValue
ກົນວຽກ fn fnMethod
ຈຳນວນ (ໂຕກິດ) i iValue
ໂອບຄັກ o oType
ກົນວຽກສະແພງ re rePattern
ຄຳຂັດແຍ່ງ s sValue
ຊະນິດ (ສາມາດເປັນແບບໃດໄດ້) v vValue

ການກຳນົດພັນທະບັດບໍ່ຈຳເປັນ

ການສະແດງທີ່ສະຫຼາດຂອງ ECMAScript (ແລະການແຕກຕ່າງຈາກພາສາການການກຳນົດອຸປະກອນຫຼາຍພາສາການກຳນົດອຸປະກອນ) ແມ່ນບໍ່ຈຳເປັນກຳນົດພັນທະບັດກ່ອນການນຳໃຊ້. ເອງ. ການກຳນົດພັນທະບັດບໍ່ຈຳເປັນ.

var sTest = "hello ";
sTest2 = sTest + "world";
alert(sTest2);

ໃນການຂຽນລະບົບທີ່ມີຂື້ນ, ກ່ອນໜ້ານັ້ນ, sTest ໄດ້ຖືກກຳນົດຄືກັບຄຳຂັດແຍ່ງຂອງຕົວແທນທີ່ "hello". ຕໍ່ມາດ້ວຍການກຳນົດຄຳຂັດແຍ່ງນີ້, sTest2 ໄດ້ຕິດຕໍ່ sTest ແລະຄຳຂັດແຍ່ງ "world". sTest2 ບໍ່ໄດ້ຖືກກຳນົດຄືກັບຄຳຂັດແຍ່ງ var, ນີ້ພຽງແຕ່ການສະເໜີມັນ, ຄືວ່າມັນໄດ້ຖືກກຳນົດມາກ່ອນ.

ບັນຍັດ ECMAScript ຈະສ້າງພັນທະບັດທຳມະດາຈາກຊື່ພັນທະບັດທີ່ບໍ່ໄດ້ກຳນົດມາ, ແລະກໍານົດຄຳການທຳມະດາຈາກຊື່ພັນທະບັດນັ້ນ.

ນີ້ແມ່ນຄວາມສະດວກຂອງພາສານີ້, ແຕ່ຖ້າບໍ່ສາມາດຕິດຕາມພັນທະບັດຢ່າງຄົງຄວາມນີ້ກໍ່ອາດເປັນຄວາມອັນຕະລາຍ. ການກຳນົດພັນທະບັດຢ່າງດີທີ່ສຸດຕິກຳຄືກັບພາສາການການກຳນົດອຸປະກອນອື່ນໆ, ວ່າຈະກຳນົດພັນທະບັດທັງໝົດ.