一、基本数据类型:字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol。

注:Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。
  1. String:字符串

    • js中字符串使用单引号和双引号引起来,但不要混用;
    • 引号不能嵌套,双引号不能放双引号,单引号不能放单引号;
    • 字符串中我们可以使用\作为转义字符,如:
转义序列:
\n 换行
\t:制表符
\b:空格
\r:回车符
\f:分页符
\\:斜杠\
\':单引号
\":双引号
\xnn:十六进制数,n代表0~F
\unnnn;以十六进制代码表示一个undefined
  1. Number:数值

    • js中所有数值都是Number类型,Number类型既可以表示小数也可以表示整数;
    • Number数字超过了最大值为 Infinity(无穷);
    • NaN 是(not a number) 一个不是数字的数字类型,使用typeof检查一个NaN也会返回number;
    • 注意:js中整数运算可以保证精确,浮点运算不能保证精确,所以不要使用js运算浮点型数据
  2. Boolean:布尔
    • Boolean有两个值:true、false;
  3. Null:空值
    • Null(空值)类型的值只有一个,就是null;
    • null这个值专门用来表示一个为空的对象;
    • typeof检查一个null值时,会返回object;
  4. Undefined:未定义
    • Undefined(未定义)类型的值只有一个,就undefind;
    • 当声明一个变量,但是并不给变量赋值时,它的值就是undefined;
    • 使用typeof检查一个undefined时也会返回undefined;

二、对象类型:对象(Object)、数组(Array)、函数(Function),正则(RegExp) 和日期(Date)

对象概述:对象是一个复合型数据类型,在对象中可以保存多不不同数据类型的属性

  1. 对象(Object)

    • js中通过new关键词调用构造函数来创建对象:var obj = new Object;
    • 通过typeof检查对对象的类型时会返回一个object;
    • 字面量创建对象
      • 对象字面量,可以在创建对象时,直接指定对象中的属性;
      • 语法:{属性名:属性值,属性名:属性值…};
      • 对象字面量的属性名可以加引号也可以不加,建议不加,如果属性使用特殊字符,必须加引号;
  2. 函数(function)
    • 函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码);
    • 封装在函数中的代码不会立即执行,会在调用函数的时候执行;
    • 使用typeof检查一个函数对象时,会返回function;
    • 语法:
      function 函数名(形参列表){
      函数体;
      }
    • 调用:方法名称(实际参数列表);
  3. 日期(Date)
    • JS中使用Date对象来表示一个时间;
    • 直接使用构造函数创建一个Date对象,则会封装为系统的当前时间:var date = new Date();
  4. 正则(RegExp)
    • 正则表达式用于定义一些字符串的规则,计算机可以根据正则表达式,来检查一个字符串是否符合规则;
    • 构造函数创建正则对象:var 变量 = new RegExp(“正则表达式”,“匹配模式”);
    • 字面量来创建正则表达式:语法:var 变量 = /正则表达式/匹配模式;
    • 比较:使用字面量的方式创建更加简单,使用构造函数创建更加灵活;
  5. 数组(Array)
    • 数组是一个对象,是用来存储数据的对象,和Object类似,但存储效率比普通对象要高;
    • 数组使用索引(index)来操作元素,索引指由0开始的整数;
    • JS中,数组元素的类型可变的,数组长度可变的。
    • 构造函数创建数组:var arr = new Array();
    • 字面量创建数组:var arr = [];(推荐)

三、类型转换

  1. 其他类型转数字(number):

    • string转number:按照字面值转换。如果字面值不是数字,则转为NaN(不是数字的数字), Number() 可以将字符串转换为数字,如Number(“jsdj”)。

    • boolean转number:true转为1,false转为0。

    • 日期转换为number:Number() 和getTime() 都将日期转换为数字。如

d = new Date();
Number(d);
d.getTime();
  1. 其他类型转boolean:

    • number:0或NaN为假,其他为真;
    • string:除了空字符串(“”),其他都是true;
    • null&undefined:都是false;
    • 对象:所有对象都为true;
    • 调用Number()、parseInt()和parseFloat();
    • 使用一元的+来进行隐式的类型转换;
  2. 其他类型转String:
    • String() 和toString()都可以将数字、布尔值和日期转换为字符串。
    • 任意的数据类型+“”;
var x=12343;
String(x);         // 将1234转换为字符串并返回
x.toString();String(false);       // 返回 "false"
false.toString();     // 返回 "false"o = new Date();
String(o);          //Sat Oct 08 2022 14:46:09 GMT+0800 (中国标准时间)
o.toString();       //Sat Oct 08 2022 14:46:09 GMT+0800 (中国标准时间)

JavaScript 数据类型和类型转换相关推荐

  1. javascript 数据类型与类型转换

    JavaScript 数据类型 值类型(基本类型): 字符串(String) 数字(Number) 布尔(Boolean) 空(Null) 未定义(Undefined) Symbol 注:Symbol ...

  2. JavaScript 数据类型 类型转换 数组

    一.JavaScript数据类型   (typeof  可检查数据类型  语法: typeof 变量) 1.数值类型(number) 2.字符串类型 string 3.布尔类型 boolean 4.N ...

  3. python123数字形式转换_【Python系统学习02】数据类型与类型转换

    数据类型与类型转换 一.数据类型 字符串 整数 浮点数 [补充中...] 1.字符串 str 字符串:英文string,简写str. name = '小石头:' print(name,'2019', ...

  4. html 类型转换,JavaScript怎么进行类型转换?

    JavaScript怎么进行类型转换?下面本篇文章就来介绍一下使用javascript进行类型转换的方法,希望对大家有所帮助. JavaScript 变量可以转换为新变量或其他数据类型,分为两种情况: ...

  5. JavaScript隐式类型转换

    JavaScript隐式类型转换 基本数据类型 ECMAScript 一共定义了七种 build-in types,其中六种为 Primitive Value,Null, Undefined,Stri ...

  6. JavaScript筑基篇(二)-JavaScript数据类型

    说明 介绍JavaScript数据类型 目录 前言 参考来源 前置技术要求 JavaScript的6种数据类型 哪6种数据类型 undefined 类型 null 类型 boolean 类型 numb ...

  7. js数据转换为html,JavaScript怎么进行类型转换?

    JavaScript怎么进行类型转换?下面本篇文章就来介绍一下使用javascript进行类型转换的方法,希望对大家有所帮助. JavaScript 变量可以转换为新变量或其他数据类型,分为两种情况: ...

  8. 第九十九节,JavaScript数据类型

    JavaScript数据类型 学习要点: 1.typeof操作符 2.Undefined类型 3.Null类型 4.Boolean类型 5.Number类型 6.String类型 7.Object类型 ...

  9. 从javaScript数据类型开始了解垃圾回收机制

    一. javaScript数据类型 javaScript 数据类型分为:基本数据类型.引用数据类型 基本数据类型 分类:Number.String.Boolean.Null.Undefined.Sym ...

最新文章

  1. 7个问题,直击管理的本质
  2. springboot入门知识点(一)
  3. sqlmap参数说明
  4. 【图像分割模型】感受野与分辨率的控制术—空洞卷积
  5. windows强制复制不计算机,告诉你电脑不能复制粘贴怎么办
  6. 关于cmake从GitHub上下载的源码启动时报错的问题
  7. spring boot 实战
  8. java 跨类 调用 model_Model.java中的这两个方法,为什么不能在子类中调用,或者包内调用也行啊。...
  9. 一文读懂Java泛型中的通配符 ?
  10. 【深度学习再突破】让计算机一眼认出“猫”:哈佛提出新高维数据分析法
  11. VIM 查找替换命令的使用
  12. 私藏的开发过程中的那些基类
  13. dpkg: error: dpkg status database is locked by another process 解决方法
  14. 误删数据库---恢复
  15. 智能随访系统:提升患者综合服务能力和就医体验,提高医院品牌价值与服务质量
  16. PDF文件解密安全口令
  17. (线段判交的一些注意。。。)nyoj 1016-德莱联盟
  18. “河南旦”的四个坟墓的故事·《晚唱·贾平凹》
  19. python 点点滴滴
  20. 高仿android 版微信(服务端,客户端都有)

热门文章

  1. 经典ps教程600例 打造ps高手
  2. GNU GRUB磁盘分区后不能引导启动---修复启动
  3. c语言打印字母金字塔图形,C程序打印金字塔和图案
  4. 学计算机应用表白,521.1314表白的数学题 学霸间的表白方式
  5. 【证明题】(一)微分中值定理
  6. 从Mate X3看华为折叠屏手机的创新领启
  7. P2P、O2O、B2C、B2B、C2C分别代表什么意思?
  8. 安装VC 6.0,出现 DOSX.EX must be in your AUTOEXEC.NT的信息
  9. 七月上伴奏计算机按键,数字化音乐专业教室配备方案(7页)-原创力文档
  10. 简易时间计时器的实现