温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

JavaScript 中有哪些基本数据类型

发布时间:2021-08-03 15:54:33 来源:亿速云 阅读:151 作者:Leah 栏目:编程语言

本篇文章为大家展示了JavaScript 中有哪些基本数据类型,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

首先,我们了解一下基本数据类型。

1. String

JavaScript 采用 UTF-16 编码的 Unicode 字符集,JavaScript 中的字符串是由一组无符号的 16 位值组成的序列,最常用的 Unicode 字符都是通过 16 位的内码来表示的,并代表字符串中的单个字符

var p = 'π'
var e = 'e'
p.length // 1; p 包含一个 16 位值
e.length // e 通过 UTF-16 编码之后包含两个 16 位值:"\ud835\udc52"

只要引用了字符串的属性,JavaScript 就会将字符串值通过new String(s)的方式转换为对象,这个对象继承了字符串的方法,一旦引用结束,这个新创建的对象就会被销毁

var s = 'test'
s.len = 4
var t = s.len // undifined
复制代码

第二行代码创建一个临时对象,并给这个对象的len属性赋值,随即销毁这个对象,第三行代码用的是原始的字符串值,他没有len属性,所以为undifined

在读取字符串的属性值时,表现的就像对象一样。但如果试图给属性赋值,则会忽略这个操作,修改只发生在临时对象身上,而这个临时对象并未保存下来

这个临时对象称之为包装对象,字符串(还有数字和布尔值)的属性都是只读的,并不能赋值,有别于其他的对象

字符串是存放在堆内存里面的,一旦创建就不可更改,如果想改变某个变量保存的字符串,就必须先销毁原来的字符串,再用一个新的来填充该变量。

2. Number

在 JavaScript 里,所有与数字有关的都是 Number 类型,Number 类型又分为整数值和浮点数值,但是保存浮点数的内存空间是保存整数的内存空间的两倍,所以 JavaScript 当然不希望在寸土寸金的内存空间里过多的存放浮点数,有下面两种情况会将浮点数转成整数:

  1. 小数点后面没有跟数字,比如 1.

  2. 小数点后面等于 0,比如 1.00

都会转成整数 1

在 Number 类型里还有一个值是 NaN(Not a Number),如果面试官问你该怎么判断一个变量是不是 NaN 呢?你当然不能答使用x == NaN,因为这个特殊的值与任何值都不相等,要想判断它还得使出真功夫。有以下两种方法可以判断:

  1. 使用x != x来判断,因为这货连自己都不认识,只要返回 true,那就证明 x 是 NaN 无疑了

  2. JavaScript 为我们提供了函数isNaN()来方便我们

任何类型的数据与 Number 类型的数据进行数学运算时都会被转成数字,不能转成数字的就是 NaN

3. Boolean

Boolean 类型没什么好说的,就两个值:true 和 false,但是需要注意的是在 JavaScript 中,类型转换为我们提供了更多的可能性,现在就让我们来简单了解一下其他数据类型转换成布尔类型。

数值类型 转换成布尔值 undefined false null false 布尔值 true/false 数字 +0、-0 和 NaN 是 false,其他是 true 字符串 空字符串是 false,其他是 true 对象 true

JavaScript 中的任何值都可以转换成布尔值,其中只有六个转换为 false

4. Undefined

Undefined 类型只有一个值 undefined,这个值用来表示已声明但未被赋值的变量。

5. Null

Null 也是只有一个值:null,用来表示空对象指针。

undefined 与 null 的区别一句话概括:undefined 表示“缺少值”,此处应该有值,但是还未定义;null 表示没有对象,此处不应该有值

typeof 操作符

了解基本数据类型的时候,就不得不来了解一下 typeof 操作符,它可是我们判断基本数据类型的一个好帮手。

typeof 用来检测变量的数据类型,返回值一共有六个http://www.fuke029.com/

  • 'number'

  • 'string'

  • 'boolean'

  • 'object'

  • 'undefined'

  • 'function'

注意这六种都是字符串类型,如果我们写typeof(typeof('123'))那么返回的是'string'

在 JavaScript 中,基本类型的值都是存放在栈内存中的,变量之间的赋值都是通过拷贝进行的,此后两个变量再参与任何操作的时候都不会相互影响

上述内容就是JavaScript 中有哪些基本数据类型,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI