前言
持续学习总结输出中,今天分享的是Web前端,JS基础之数据类型
1、数据类型
计算机世界中的万事万物都是数据。计算机程序可以处理大量的数据。
JS 数据类型整体分为两大类:
基本数据类型 number 数字型 string 字符串型 boolean 布尔型 undefined 未定义型 null 空类型
引用数据类型 object 对象 function 函数 array 数组
number 数字型
即我们数学中学习到的数字,可以是整数、小数、正数、负数。
<script>
let age = 18 //正整数
let num = 3.141592653 //小数
let num2 = -12 //负数
</script>
JavaScript 中的正数、负数、小数等 统一称为 数字类型。
注意事项
JS 是弱数据类型,变量到底属于那种类型,只有赋值之后,我们才能确认 Java是强数据类型 例如 int a = 3 必须是整数
string 字符串型
通过单引号( '') 、双引号( "")或反引号( ` )包裹的数据都叫字符串,单引号和双引号没有本质上的区别, 推荐使用单引号。
<script>
let name = '小星' //使用单引号
let gender = "男" //使用双引号
let num = '123' //看上去是数字,但是用引号包裹了就成了字符串了
let str1 = '' //这种情况叫空字符串
</script>
注意事项:
- 无论单引号或是双引号必须成对使用
- 单引号/双引号可以互相嵌套,但是不以自已嵌套自已(口诀:外双内单,或者外单内双)
- 必要时可以使用转义符 \,输出单引号或双引号
字符串拼接:
<script>
let uname = prompt('请输入您的名字')
document.write('我的名字是:' + uname)
</script>
运行结果:
模板字符串
1. 作用
- 拼接字符串和变量
- 在没有它之前,要拼接变量比较麻烦
<script>
let age = 18
document.write('我今年:' + age + '岁了:')
</script>
2. 符号
- ``
- 在英文输入模式下按键盘的tab键上方那个键(1左边那个键)
- 内容拼接变量时,用${}包住变量
<script>
// 模板字符串
let age = 81
document.write(`我今年${age - 20}岁了`)
// document.write('我是一个字符串')
document.write(`
<div>123</div>
<p>abc</p>
`)
</script>
运行结果:
boolean 布尔型
表示肯定或否定时在计算机中对应的是布尔类型数据。 它有两个固定的值 true 和 false,表示肯定的数据用 true(真),表示否定的数据用 false(假)。
<script>
// 1. 布尔型 true false
console.log(true)
console.log(false)
</script>
运行结果:
undefined 未定义型
未定义是比较特殊的类型,只有一个值 undefined。 什么情况出现未定义类型? 只声明变量,不赋值的情况下,变量的默认值为 undefined,一般很少【直接】为某个变量赋值为 undefined。
<script>
// undefined 只声明不赋值
let age
console.log(age)
</script>
工作中的使用场景: 我们开发中经常声明一个变量,等待传送过来的数据。 如果我们不知道这个数据是否传递过来,这种情况我们可以通过检测这个变量是不是undefined,就判断用户是否 有数据传递过来。
未定义是比较特殊的类型,只有一个值 undefined。
总结
| 情况 | 说明 | 结果 |
|---|---|---|
| let age console.log(age) | 只声明 不赋值 | undefined |
| console.log(age) | 不声明不赋值 直接使用 | 报错 |
| age=10; console.log(age) | 不声明 只赋值 | 10(不提倡) |
null 空类型
null 表示 值为 空
<script>
// null 空
let obj = null
console.log(obj)
</script>
null 和 undefined 区别:
- undefined 表示没有赋值
- null 表示赋值了,但是内容为空
null 开发中的使用场景:将来有个变量里面存放的是一个对象,但是对象还没创建好,可以先给个null
小结 1. 布尔数据类型有几个值? true 和 false
2. 什么时候出现未定义数据类型?以后开发场景是? 定义变量未给值就是 undefined 如果检测变量是undefined就说明没有值传递过来
3. null是什么类型? 开发场景是? 空类型 如果一个变量里面确定存放的是对象,如果还没准备好对象,可以放个 null
2、检测数据类型
<script>
let age =18
let uname ='小星'
let flag =false
let buy
console.log(age)
console.log(uname)
console.log(flag)
console.log(buy)
// 返回的什么类型 string number Boolean null
console.log(typeof 123)
console.log(typeof '123')
console.log(typeof true)
console.log(typeof undefined)
console.log(typeof null)
let num = 10
console.log(typeof num + '11')
</script>
运行结果:
3、总结
最后分享一句话:
认识自己的无知,是认识世界的最可靠的方法。 《随笔集》——蒙田
本次的分享就到这里了!!!
欢迎在评论区留言讨论!!!