美文网首页
JavaScript中的类型、值和变量

JavaScript中的类型、值和变量

作者: 程序员之家 | 来源:发表于2023-08-19 09:34 被阅读0次

JavaScript的类型可以分为两个主要组别:原始类型和对象类型。JavaScript的原始类型包括数字、文本字符串(简称为字符串)和布尔值(也称为布尔值)。

特殊值null和undefined也是原始值,但它们不是数字、字符串或布尔值。这两个值通常被视为各自类型的独特成员。ES6引入了另一种特殊类型,称为Symbol,用于语言扩展而不破坏向后兼容性。

在JavaScript中,除了数字、字符串、布尔值、Symbol、null和undefined之外的任何值都是对象。对象是对象类型的成员,它们是属性的集合,每个属性都有一个名称和一个值(可以是原始值或另一个对象)。还有一个非常特殊的对象,称为全局对象。

(程序员的软技能:ke.qq.com/course/6034346)

常规JavaScript对象是无序的命名值的集合。语言本身还定义了一种特殊的对象,称为数组。数组表示有序的数值集合。JavaScript包括用于操作数组的特殊语法,数组本身展现出与常规对象不同的行为。

除了基本对象和数组之外,JavaScript还定义了其他几种有用的对象类型。Set对象表示值的集合,而Map对象表示键值映射。各种“类型化数组”类型便于对字节数组和其他二进制数据进行操作。RegExp类型表示文本模式,并在字符串上支持复杂的匹配、搜索和替换操作。Date类型表示日期和时间,支持基本日期计算。Error类型及其子类表示在JavaScript代码执行过程中可能发生的错误。

将JavaScript与静态语言区分开的是,函数和类不仅仅是语法,它们本身是可以由JavaScript程序操作的值。与JavaScript中的其他非原始值一样,函数和类也是特殊类型的对象。

在内存管理方面,JavaScript解释器执行自动垃圾回收。这意味着JavaScript程序员通常不需要关心对象或其他值的销毁和释放。当一个值变得不可访问,或者不再被程序引用,解释器知道它不再需要,并自动释放它占用的内存(尽管JavaScript程序员有时应该谨慎,以防止值比预期的持续时间更长,变得无法回收)。

JavaScript支持面向对象的编程风格。实质上,这意味着不要为不同类型的值定义全局函数,而是让这些类型定义操作值本身的方法。例如,要对数组的元素进行排序,您不需要将数组传递给sort()函数;相反,您可以在数组a上调用sort()方法:

// 面向对象版本的sort(a)

a.sort()

从技术角度来看,只有JavaScript对象具有方法。但是,数字、字符串、布尔值和符号似乎也有方法。在JavaScript中,只有null和undefined不能调用方法。

JavaScript的对象类型是可变的,而其原始类型是不可变的。可变类型可以更改;例如,JavaScript程序可以修改对象的属性和数组元素。数字、布尔值、符号、null和undefined是不可变的。例如,修改数字没有意义。字符串可以被视为字符数组,您可能期望它们是可变的。但是,在JavaScript中,字符串也是不可变的。虽然您可以使用索引访问字符串中的字符,但JavaScript不提供修改字符串中现有字符的方法。

JavaScript自由地转换不同类型的值。例如,如果程序期望一个字符串,但您提供了一个数字,数字将自动转换为字符串。同样,如果在期望布尔值的地方使用非布尔值,JavaScript将相应地进行转换。

JavaScript中的这种自由值转换影响了等式的定义,等式运算符==执行类型强制转换(尽管在实践中,等式运算符==通常被避免,而使用严格等式运算符===,它不执行类型强制转换)。

常量和变量允许我们在程序中使用名称引用值。常量使用const声明,变量使用let(或在较旧的JavaScript代码中使用var)声明。JavaScript的常量和变量是无类型的;它们的声明不限制它们可以保存的值的类型。

(程序员的软技能:ke.qq.com/course/6034346)

相关文章

  • Javascript 学习笔记

    JavaScript 中的变量类型JavaScript 中变量可以存储两种类型的值,即原始值和引用值。5种原始类型...

  • js的变量类型和计算

    变量类型 按照存贮方式来分,变量类型分为值类型和引用类型 1.JavaScript中的变量类型有哪些? (1)值类...

  • 类型

    JavaScript 中的变量是没有类型的,只有值才有。变量可以随时持有任何类型的值。 值和引用 基本类型值赋值 ...

  • JS中实现浅拷贝和深拷贝

    (一)JS中基本类型和引用类型 JavaScript的变量中包含两种类型的值:基本类型值 和 引用类型值,在内存中...

  • JavaScript 变量类型

    变量类型 JavaScript 中的变量类型分为值类型(又称为简单类型、基本数据类型)以及引用类型。 【值类型】:...

  • 你不知道的javaScript(中)

    第一部分 类型和语法 1、值和类型 检测null 值的类型: JavaScript中的变量是没有类型的,只有值才有...

  • js中,变量是没有类型的?

    在JavaScript中,变量是没有类型的,值才有类型, 变量可以在任何时候,持有任何值。

  • JS基本类型和引用类型

    JS中可以把变量分成两部分,基本类型和引用类型。 JavaScript值类型和引用类型有哪些(1)值类型:数值、布...

  • string()和new string()的区别

    javascript中的变量在内存中的存储有两种形式,值类型存储和引用类型存储,值类型存储是直接在地址中存值的,而...

  • 基础数据类型和原生类型

    基础数据类型 在 JavaScript 中,变量没有类型 -- 值才有类型。变量可以在任何时候,持有任何值。 nu...

网友评论

      本文标题:JavaScript中的类型、值和变量

      本文链接:https://www.haomeiwen.com/subject/khhjmdtx.html