JavaScript-数据类型

学习目标:

  • 掌握数据类型

学习内容:

  1. 数据类型
  2. 数字类型
  3. 字符串类型String
  4. 布尔类型boolean
  5. 未定义类型undefined
  6. null(空类型)
  7. 检测数据类型

数据类型:

  • 为什么要给数据分类
  1. 更加充分和高效的利用内存。
  2. 也更加方便程序员的使用数据。
  • JS数据类型整体分为两大类
  1. 基本数据类型
  2. 引用数据类型
    在这里插入图片描述

数字类型:

即我们数学中学习到的数字,可以是整数、小数、正数、负数。

 let age = 18 //整数
 let price = 88.99 //小数

JavaScript中的正数、负数、小数等 统一称为数字类型。

注意事项:

  1. JS是弱数据类型,变量到底属于哪种类型,只有赋值之后,我们才能确认。
  2. Java是强数据类型 例如 int a = 3 必须是整数。
    代码:
//js 弱数据类型的语言  只有当我们赋值了,才知道是什么数据类型
    let num = '雪碧'
    console.log(num)
    //Java 强数据类型的语言  int num = 10

数字可以有很多操作,比如,乘法*、除法/、加法+、减法-等等,所以经常和算术运算符一起。
算术运算符也叫算术运算符,主要包括加、减、乘、除、取余(求模)。

+求和
-求差
*求积
/求商
%取模(取余数)

同时使用多个运算符号编写程序时,会按着某种顺序先后执行,我们称为优先级。
JavaScript中优先级越高越先被执行,优先级相同时按照从左向右执行

乘、除、取余优先级相同
加、减优先级相同
乘、除、取余优先级大于加、减
使用()可以提升优先级
总结:先乘除后加减,有括号先算括号里面的
  • 算术运算符优先级记忆
    先乘数取余,后加减,有小括号先算小括号里面的。
  • 取余运算符开发中的使用场景
    来判断某个数字是否能被整除。
  • NaN
  1. NaN代表一个计算错误。它是一个不正确的或者一个未定义的数学操作所得到的结果。
  2. NaN是粘性的。任何对NaN的操作都会返回NaN。
// NaN代表一个计算错误
    console.log('老师' - 2) //NaN
    //  NaN是粘性的。任何对NaN的操作都会返回NaN
    console.log(NaN + 2)//NaN
    console.log(NaN == NaN)
  • 案例代码
<title>练习-计算圆的面积</title>
</head>

<body>
  <script>
    // 1.页面弹出输入框
    let r = prompt('请输入圆的半径:')
    // 2.计算圆的面积  (内部处理)
    let re = 3.14 * r * r
    // 3.页面输出
    document.write(re)
  </script>

</body>

字符串类型string

通过单引号(‘’)、双引号(“”)或者反引号(`)包裹的数据都叫字符串。 单引号和双引号没有本质上区别,推荐使用单引号

    let str = '雪碧'//使用单引号
    let str1 = "雪碧"//使用双引号
    let st2 = `雪碧`//使用反引号
    let tel = '110110110110'//看上去是数字,但是引号包裹了就是字符串
    let str3 = ''//这种情况叫空字符串

注意事项:

  1. 无论单引号或是双引号必须成对使用。
  2. 单引号/双引号可以互相嵌套,但是不以自己嵌套自己(口诀:外双内单,或者外单内双)。
  3. 必要时可以使用转义符\,输出单引号或双引号。
  • 字符串拼接
    场景: +运算符 可以实现字符串的拼接。
    口诀:数字相加,字符相连。
// 字符串拼接
    console.log(1 + 1)
    console.log('雪碧' + '宝宝')

在这里插入图片描述

  • 模板字符串
    场景:
  1. 拼接字符串和变量。
  2. 在没有它之前,要拼接变量比较麻烦。
// 在没有模板字符串之前,要拼接变量比较麻烦
     document.write('大家好,我叫' + name + ',今年' + age + '岁')
     

语法:

  1. ``(反引号)。
  2. 在英文输入模式下按键盘的tab键上方那个键(1左边那个键)。
  3. 内容拼接变量时,用${}包住变量。
 // 模板字符串 外面用``  里面${变量名}
    let age = 18
    document.write(`我今年${age}岁了`)
  • 案例代码
<title>练习-页面输出用户信息案例</title>
</head>

<body>
  <script>
    let name = prompt("请输入姓名:")
    let age = prompt("请输入年龄:")
    document.write(`大家好,我叫${name},今年${age}岁了`)


  </script>

</body>

布尔类型boolean:

表示肯定或否定时在计算机中对应的是布尔类型数据。
它有两个固定的值truefalse,表示肯定的数据用true(真),表示否定的数据用false(假)。

<title>布尔类型boolean</title>
</head>

<body>
  <script>
    // true false 是布尔型字面量
    console.log(3 > 4)
    let isCool = true
    console.log(isCool)
  </script>

</body>

未定义类型undefined:

未定义是比较特殊的类型,只有一个值undefined

  • 什么情况出现未定义类型?
    只声明变量,不赋值的情况下,变量的默认值为undefined,一般很少[直接]为某个变量赋值为undefined
<title>布尔类型boolean</title>
</head>

<body>
  <script>
    // true false 是布尔型字面量
    console.log(3 > 4)
    let isCool = true
    console.log(isCool)
  </script>

</body>
  • 工作中的使用场景
    我们开发中经常声明一个变量,等待传送过来的数据。
    如果我们不知道这个数据是否传递过来,此时我们可以通过检测这个变量是不是undefined,就判断用户是否有数据传递过来。

null(空类型):

Javascript 中的null 仅仅是一个代表“无”、“空”或“值未知”的特殊值。

let obj = null
    console.log(obj)
  • nullundefined区别
  1. undefined 表示没有赋值。
  2. null 表示赋值了,但是内容为空。
// null和undefined区别
    // 计算有区别
    console.log(undefined + 1)//NaN
    console.log(null + 1)// 1
  • null开发中的使用场景
    官方解释:把null作为尚未创建的对象。
    大白话:将来有个变量里面存放的是一个对象,但是对象还没创建好,可以先给个null

检测数据类型 :

  • 控制台输出语句
<title>检测数据类型</title>
</head>

<body>
  <script>
    // 控制台输出语句
    let age = 18
    let name = '雪碧宝宝'
    let flag = false
    let buy
    console.log(age)
    console.log(name)
    console.log(flag)
    console.log(buy)
  </script>

</body>

在这里插入图片描述

  1. 控制台语句经常用于测试结果来使用。
  2. 可以看出数字型和布尔型颜色为蓝色,字符串和undefined颜色为灰色。
  • 通过typeof关键字检测数据类型
  1. typeof运算符可以返回被检测的数据类型。它支持两种语法形式:
  2. 作为运算符:typeof×(常用的写法)。
  3. 函数形式:typeof(×)

换言之,有括号和没有括号,得到的结果是一样的,所以我们直接使用运算符的写法。

 //通过typeof关键字
    let num = 10
    console.log(typeof num)
    let str = 'xuebi'
    console.log(typeof str)
    let str1 = '10'
    console.log(typeof str1)
    let flag1 = false
    console.log(typeof flag1)
    let un
    console.log(typeof un)
    let obj = null
    console.log(typeof obj)

在这里插入图片描述

  • 25
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值