011_JavaScript数据类型
1. JavaScript有5种常用的数据类型: 字符串值(String), 数字(Number), 布尔值(Boolean), 数组(Array), 对象(Object)。
2. JavaScript有还有2种特殊的数据类型: 空(Null)、未定义(Undefined)。
3. JavaScript字符串
3.1. JavaScript字符串是引号中的零个或多个Unicode字符。
3.2. 字符串可以使用单引号或双引号:
var x = 'hello world';
var y = "hello world";
3.3. Java则是用双引号声明字符串, 用单引号声明字符。但是由于JavaScript没有字符类型, 所以可使用这两种表示法中的任何一种。
4. JavaScript数字
4.1. JavaScript只有一种数字类型(Number)。数字可以带小数点, 也可以不带。带小数点是浮点数, 不带小数点是整数。
4.2. 数字的取值范围: 5e-324 ~ 1.7976931348623157e+308 。
4.3. 特殊的数字类型: NaN(not a number)、Infinity(正无穷大)、-Infinity(负无穷大)。
4.4. 实例
var a = 100;
var b = 1.11;
var c = NaN;
var d = Infinity;
var e = -Infinity;
5. JavaScript布尔值
5.1. JavaScript布尔值只有两个值: true或false。
5.2. 实例
var x = true;
var y = false;
6. JavaScript数组
6.1. JavaScript数组用于在单一变量中存储多个值。
6.2. 创建数组最简单的方式是使用中括号[]包含项, 多个项用逗号分割。
6.3. 实例
var x = [];
var y = [0, true, 'hello world'];
6.4. 我们通过引用索引号(下标号)来引用某个数组元素。
6.5. 数组索引从0开始。[0]是数组中的第一个元素, [1]是第二个, 依此类推。
7. JavaScript对象
7.1. 创建对象最简单的方式是使用花括号{}包含项。
7.2. 在花括号内部是对象的属性, 属性以名称和值对的形式(name: value)来定义, 名称和值以冒号分割。
7.3. 在花括号内部的多个属性以逗号分割。
7.4. 实例
var x = {};
var y = {id: 100, name: 'zs', isMan: false};
8. Undefined类型
8.1. Undefined类型只有一个值, 即undefined。
8.2. undefined字面意思是未定义, 但是它却表示没有值的变量。即当声明的变量未初始化时, 该变量的默认值是undefined。
8.3. 下面这段代码, 第一行声明变量x, 没有初始值, 该变量将被赋予值undefined。第二行代码显示"true", 说明这两个值确实相等。
var x;
window.alert(x == undefined); //输出true
8.4. 值undefined并不同于未声明的变量。但是, typeof运算符并不真正区分这两种值。考虑下面的代码:
var x;
window.alert(typeof x); //输出undefined
window.alert(typeof y); //输出undefined
8.5. 上面的代码对两个变量输出的都是"undefined", 即使变量y从未被声明过。如果对y使用除typeof之外的其他运算符的话, 会引起错误, 因为其他运算符只能用于已声明的变量上。例如, 下面的代码将引发错误:
var x;
window.alert(y == undefined);
8.6. 当函数无明确返回值时, 返回的也是值"undefined", 如下所示:
function myFunc() { }
window.alert(myFunc() == undefined); // 输出true
9. Null类型
9.1. Null类型也只有一个值, 即null。
9.2. null表示尚未存在的对象。
9.3. 其实undefined是从值null派生来的, 因此JavaScript把它们定义为相等的:
window.alert(null == undefined); // 输出true
9.4. 尽管这两个值相等, 但它们的含义不同。undefined是声明了变量但未对其初始化时赋予该变量的值, null则用于表示尚未存在的对象。
9.5. 如果函数或方法要返回的是对象, 那么找不到该对象时, 返回的通常是null。
9.6. 可以通过将变量的值设置为null来清空对象。
9.7. 在JavaScript中, null的数据类型是对象。
10. 例子
10.1. 代码
<!DOCTYPE html>
<html>
<head><title>数据类型</title><meta charset="utf-8" />
</head>
<body><script type="text/javascript">var a, b = undefined;var c = null;var d = 'hello world';var e = 1, f = 3.14, g = NaN, h = Infinity, i = -Infinity;var j = true, k = false;var l = [100, true, 'zhangsan'];var m = {id: 1001, name: 'zs', isMan: true};document.write('a = ' + a + ', b = ' + b + '<br />');document.write('c = ' + c + '<br />');document.write('(b == c) = ' + (b == c) + '<br />');document.write('d = ' + d +'<br />');document.write('e = ' + e + ', f = ' + f + ', g = ' + g + ', h = ' + h + ', i = ' + i + '<br />');document.write('j = ' + j + ', k = ' + k + '<br />');document.write('l =' + l + '<br />');document.write('m =' + m + '<br />');m = null;document.write('m =' + m + '<br />');</script>
</body>
</html>
10.2. 效果图
11. typeof运算符
11.1. 您可使用typeof运算符来确定JavaScript变量或表达式的类型。
11.2. typeof运算符把对象、数组或null返回object。
11.3. typeof运算符把函数返回function。
11.4. 例子
11.4.1. 代码
<!DOCTYPE html>
<html>
<head><title>typeof运算符</title><meta charset="utf-8" />
</head>
<body><script type="text/javascript">var a, b = undefined;var c = null;var d = 'hello world';var e = 1, f = 3.14, g = NaN, h = Infinity, i = -Infinity;var j = true, k = false;var l = [100, true, 'zhangsan'];var m = {id: 1001, name: 'zs', isMan: true};document.write('a =' + a + ', a的数据类型是: ' + typeof a + '<br />');document.write('b =' + b + ', b的数据类型是: ' + typeof b + '<br />');document.write('c =' + c + ', c的数据类型是: ' + typeof c + '<br />');document.write('d =' + d + ', d的数据类型是: ' + typeof d + '<br />');document.write('e =' + e + ', e的数据类型是: ' + typeof e + '<br />');document.write('f =' + f + ', f的数据类型是: ' + typeof f + '<br />');document.write('g =' + g + ', g的数据类型是: ' + typeof g + '<br />');document.write('h =' + h + '。 h的数据类型是: ' + typeof h + '<br />');document.write('i =' + i + ', i的数据类型是: ' + typeof i + '<br />');document.write('j =' + j + ', j的数据类型是: ' + typeof j + '<br />');document.write('k =' + k + ', k的数据类型是: ' + typeof k + '<br />');document.write('l =' + l + '。 l的数据类型是: ' + typeof l + '<br />');document.write('m =' + m + ', m的数据类型是: ' + typeof m + '<br />');function myFunction(){}document.write('myFunction =' + myFunction + ', myFunction的数据类型是: ' + typeof myFunction + '<br />');document.write('(' + f + ' + ' + e + ')表达式的数据类型是: ' + typeof (f + e));</script>
</body>
</html>
11.4.2. 效果图
12. JavaScript字面量
12.1. 字符串、数字包括NaN和Infinity和-Infinity、布尔、Null、Undefined都是字面量(没有使用new关键字创建对象的值)。
12.2. 字面量跟常量的意思差不多。
12.3. 实例
''
'你好'
0
3.14
NaN
Infinity
-Infinity
true
false
null
Undefined
13. JavaScript值
13.1. JavaScript有两种类型的值: 字面量值和变量值。
13.2. 实例
var x = 1;
var y = x + 3.14; // 算数运算, 使用了x这个变量值
011_JavaScript数据类型相关推荐
- Postman使用Date数据类型,Postman发送Date类型数据,Postman模拟前端调用
Postman使用Date数据类型: 在form-data数据类型下,使用 2021/7/7 11:11:00 (yyyy/MM/dd HH:mm:ss) 的数据格式即可 如下: 在json数据格式中 ...
- 大数据中用到的新的数据类型bigint、decimal、smallint、tinyint
在对比oracle数据库和大数据库的时候,发现了几个用以存放数字的新的类型bigint.decimal.smallint.tinyint,为了对比之间的不同,我进行了统计 bigint 可以精确的表示 ...
- NumPy — 创建全零、全1、空、arange 数组,array 对象类型,astype 转换数据类型,数组和标量以及数组之间的运算,NumPy 数组共享内存
NumPy 简介 一个用 python 实现的科学计算包.包括: 1.一个强大的 N 维数组对象 Array : 2.比较成熟的(广播)函数库: 3.用于整合 C/C++ 和 Fortran 代码的工 ...
- 【JavaScript总结】JavaScript语法基础:数据类型
------>数据类型有哪些? ->基本类型:数字类型,布尔类型,字符串类型 ->引用类型:对象类型,函数类型 ->空类型:null 和 undefined ->运算符: ...
- 数据类型对应的字节数
20210622 https://www.icode9.com/content-4-421680.html 32位和64位常用数据结构所占字节数 20210126 1 2 4 8 1248 刚好都是2 ...
- tensorflow2.0 基础一 常用数据类型及转换
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_43619065/arti ...
- 深入浅出Redis五种基本数据类型
文章目录 1.String SDS(Simple Dynamic String) 2.RedisDB设计 3.List 4.Hash 5.Set intset 6.ZSet skiplist 1.St ...
- TVM自定义数据类型
TVM自定义数据类型 本文将介绍"自定义数据类型"框架,该框架可在TVM中使用自定义数据类型. 介绍 在设计加速器时,关键是如何近似地表示硬件中的实数.这个问题具有长期的行业标准解 ...
- 自主数据类型:在TVM中启用自定义数据类型探索
自主数据类型:在TVM中启用自定义数据类型探索 介绍 在设计加速器时,一个重要的决定是如何在硬件中近似地表示实数.这个问题有一个长期的行业标准解决方案:IEEE 754浮点标准.1.然而,当试图通过构 ...
最新文章
- python工作区是什么_VSCode工作区
- java Map及Map.Entry详解
- extjs5的grid垂直滚动条bug_Extjs grid panel 滚动条失效的解决方法
- sublimelinter-php 错误代码提示
- mixin network_基于Mixin Network的Go语言比特币开发教程 : 用 Mixin Messenger 机器人接受和发送比特币...
- 分布式是写出来的(三)
- 乐山市计算机学校的董事长是,乐山市计算机学校干部主题教育
- Struts2学习(四):Action执行的时候发生了什么
- centos 安装qrcode 二维码
- java来电报名字的软件_教你一招,手机来电话可以语音报出来电人的姓名和电话号码,收藏...
- lomboz连接mysql数据库_Lomboz如何配置Tomcat数据库连接池
- Invalid injected android support version ‘202.7660.26.42.7322048‘, expected to be of the form ‘w.x.y
- 办公室计算机如何互传文件,办公室电脑互联,打印机共享,方便快速的网内文件传输...
- 制作自己的openwrt刷机包_openwrt刷机教程
- O2O模式有发展前景吗 o2o怎么盈利?
- ctf之crypto练习二
- 这么炫酷的轮播图·你想学吗?
- 上传图片就能建模?!一个人人可用的在线三维大场景重建云平台
- Soul App聚焦Z世代社交需求 凭借2021亮眼表现荣获多个奖项
- 影楼管理系统需要用服务器吗,影楼发展不起来,不是管理者没有能力,而是这些原因...