数据类型

1、基本数据类型

1. 数字型(number )

  • 范围:整数,小数,正数,负数。
  • 算术运算符,主要包括:加(+),减(-),乘(*),除(/),取余(求模)(%)
  • NaN: NaN代表一个计算错误。它是一个不正确的或者一个未定义的数学操作所得到的结果
    • NaN 是粘性的:任何对NaN的操作都会返回 NaN
  • 注意:JavaScript 是弱数据类型,变量到底属于哪种类型,只有赋值以后才能确定。

2.字符串类型(string)

  • 定义:通过单引号,双引号或者反引号(`)包裹的数据都叫字符串
  • 注意:
    1. 无论单引号还是双引号必须成对使用
    2. 单引号/双引号可以互相嵌套,但是不以自己嵌套自己
    3. 必要时可以使用转义字符\,输出单引号或双引号
  • 字符串的拼接:
    • 直接法:可以直接用 “+” 连接字符串
    • 模板字符串法:用反引号包裹输出内容,用${}包裹变量,如:
      • 示例图

3.布尔类型(boolean)

  • 定义:在计算机中表示肯定或者否定的数据类型(值:true(真) / false(假))

4.未定义类型(undefined)

  • 未定义类型是比较特殊的类型,只有一个值 undefined
  • 只声明变量,不赋值的情况下,变量的默认值为 undefined

5.空类型(null)

  • null 仅仅是一个代表 ”无“、”空“ 或 ”值未知“ 的特殊值
  • null 与 undefined 区别:
    • undefined 表示没有赋值
    • null 表示赋值了,但是内容为空

6.检测数据类型

  • 通过 typeof 运算符检测数据类型,因为 typeof 可以返回被检测的数据类型
  • typeof的两种语法形式:
    • 作为运算符:typeof x (常用)
    • 函数形式:typeof(x)

7.类型转换

定义:将一种数据类型的变量转换为我们需要的数据类型

注意:使用表单,prompt 获取过来的数据默认是字符串类型

1.隐式转换

  • ”+“ 号两边只要有一个是字符串,都会把另外一个转成字符串
  • 除了+以外的算术运算符 ,比如:- * / 等都会把数据转成数字类型

2.显式转换

  • 转换为数字型:Number(数据)
    • 如果字符串内容有非数字,转换失败时结果为 NaN(Not a Number)
    • NaN也是 number 类型的数据,代表非数字
  • parseInt(数据) :只保留整数
  • parseFloat(数据):只保留小数

2、引用数据类型

object 对象

  • 定义:JavaScript 里的一种数据类型

  • 声明:

    let 对象名 = {} 或者 let 对象名 = new Object()

  • 对象由属性和行为构成:

    let 对象名 = {
        属性名:属性值,
        方法名:函数
    }
    
  • 基本操作

    • 查询对象
      • 方法一: 对象==.==属性
      • 方法二:对象名['属性名'] (属性名可以是字符串的形式)
    • 修改对象
      • 方法:对象==.==属性 = 值
    • 添加数据
      • 方法:对象名==.==新属性 = 新值
    • 删除属性
      • 方法:delete 对象名==.==属性名
  • 对象方法使用

    let obj = {
        uname: '小米',
        play:function(){
            console.log('元神,启动!')
        }
    }
    obj.play() //方法调用
    
  • 遍历对象

    • 语法:

      let obj = {
         uname: '小明',
         age: 18
      }
      //遍历对象
      for(let i in obj){
        console.log(i)  //打印属性名
        console.log(obj[i])   //打印属性值
      }
      
    • 注意:for-in可以用来遍历数组,但不推荐这样用,因为for-in的索引号是字符串,数组这样访问元素可能会出现错误

  • 内置对象

    • Math对象

      • 介绍:Math 对象是JavaScript提供的一个“数学”对象

      • 作用:提供了一系列做数学运算的方法

      • 属性:

        • Math.PI:获取圆周率
      • 方法:

        • random:生成0-1之间的随机数

        • ceil:向上取整

        • floor:向下取整

        • max:找最大数

        • min:找最小数

        • pow:幂运算

        • abs:绝对值

        • sqrt:平方根