JavaScript/数据类型
外观
JavaScript 中的每个变量都具有一定的数据类型(数字、字符串、布尔值等)——只要在变量中存储了值。值的类型决定了变量的类型。与强类型语言不同,可以随着时间的推移将不同类型的赋值赋予该变量,因此变量的类型可能会发生变化。这被称为弱或松散类型。优点是 JavaScript 程序员拥有大量可能性和自由度来使用(或滥用)变量。另一方面,在强类型语言中,很多形式错误可以在编译时被检测到。
JavaScript 了解七种原始数据类型(数字、字符串、布尔值、大整数、符号、未定义、空值)以及各种其他数据类型,它们都派生自对象(数组、日期、错误、函数、正则表达式)[1] [2]。对象不仅包含值,还具有方法和属性。原始数据类型也可能发生这种情况。如果它们尝试调用方法,JS 引擎会将它们'包装'为相应的对象包装器并调用其方法。这种技术有时被称为装箱。
您可能想知道为什么我们在同一章中描述数据类型和初始化。原因是它们彼此之间密切相关。为变量初始化(以及后续赋值)的值决定了其类型——如上所述。这就是为什么与其他一些语言(private int i = 0; /* Java */
)不同,在初始化过程中没有类型指定。
(注意:JSON 是一种基于文本的数据格式,而不是数据类型。因此,它是语言无关的。它使用 JavaScript 对象语法。)
数据类型在以下章节中解释。