c-pp

导航

2.数据类型

2.1 变量声明关键字

  • var

  • let

  • const

2.1.1 变量存储

变量是对字面量的存储,当我们想要反复使用某个字面量时,可以使用变量存储,下次直接使用变量名即可,不需要再去创建一个新的字面量。

如果我们要弹出三次的Hello JavaScript字符,那么我们就需要使用以下代码

alert("Hello JavaScript")
alert("Hello JavaScript")
alert("Hello JavaScript")

如果使用变量,我们就变成了下面的写法

var str = "Hello JavaScript"
alert(str)
alert(str)
alert(str)
2.1.2 变量声明

变量可以单独声明,就像我们单独做了一个箱子,但没有往箱子中放任何东西

var 变量名 // 单独声明变量不赋值
2.1.3 变量赋值
变量赋值是一个把值存放在变量中的过程,这个过程需要用赋值运算符 = 来进行。
var 变量名
变量名 = 值

这是一种先声明再赋值的过程,一般情况下,我们可以将变量声明及赋值放在一起

var 变量名 = 值
2.1.4 变量提升问题

使用var声明的变量存在变量提升的问题,那么什么是变量提升。变量提升一个客观事实,表现为,当我们先使用变量,后声明变量时,没办法得到正常的结果,看下面效果。

console.log(str) // 如果是其他编程语言,这个地方是会报错的,告诉我们变量str找不到。但是在js中不会这样,js会直接输出undefined,一个没有学过的值
var str = "Hello World"

在JavaScript中,上面的代码其实相当于下面的代码

var str
console.log(str) // 输出一个还没有学过的值undefined
str = "Hello World"

2.2 数据类型

字面量其实有不同的类型,在写JS代码时,在不同的情况,我们也需要使用不同的类型值,前期我们不清楚什么时候使用不同的类型,那么我们就需要先学习类型都有那些。

JS中的值都是存储在内存中的

2.2.1 String

在JS中,所有的用引号包裹的内容都是字符串

"字符串"
'字符串'
"123"
"3.14"
"true"

字符串包裹不限双引号和单引号

2.2.2 Number

在JS中直接写的数字没有被引号包裹的叫Number

1
10
10.11
2.2.2  NaN

NaN是一个特殊的数字,全称“Not a Number(不是一个数字)”因为在JS中很多操作都可能把一些值转换为数字,但是有些值,如特殊字符串等无法被转换为现存的数字类型

2.2.3 Boolean

在JavaScript中,有一个值掌管对错,那就是布尔值(Boolean),布尔值只有两个值 truefalse

true
false

2.2.4 Undefined

  1. 定义了一个变量但没有为该变量赋值,使用了一个并未赋值的变量

  2. 使用了一个不存在的对象的属性时

Undefined类型下只有undefined一个值,这个值在很多地方都会出现,先做了解。变量声明未赋值时就是 undefined

var str
console.log(str) // undefined

2.2.5 Null

  • null表示一个空值

  • null不等于空字符串""、''或0

  • null和undefined的区别是,null表示一个变量被赋予了一个空值,而undefined则表示该变量尚未被赋值

2.2.6 Array(数组)

2.2.6.1 创建数组

数组的写法很简单,我们可以使用 [] 来表示数组

创建数组时我们可以在数组中存放值,值的写法是统一的

数组中的值类型不作限制,设置我们可以直接存放一个新的数组都可以

var arr = []

var arr = [1, "字符串", true, undefined, null, []]
2.2.6.2索引值

在数组中,值是有顺序的,从0开始到最终结束。

[1,2,3,4,5] 这个数组的顺序就是0、1、2、3、4,而这些值就是这个数组的索引值,也叫下标

2.2.6.3 数组取值

如果我们想要使用数组中的某个值,则需要使用变量名[索引值]

let arr = ["第一个值", "第二个值", "第三个值", "第四个值"]
console.log(arr[0]) // 第一个值
console.log(arr[1]) // 第二个值
console.log(arr[2]) // 第三个值
console.log(arr[3]) // 第四个值

2.2.7 Object 对象

一切切对象

数组可以存储多个值,但是无法得知每个值的作用是什么,如果我们想要给每个值有对应的特性,可以使用对象,对象以 key: value 形式存在。在 {} 中包裹

{
  key: value,
  key: value,
  key: value,
  自定义属性名: "属性值"
}

比如,如果我们想要表示一个学生的“姓名”, “年龄”, “性别”,使用数组表示为下面的形式

let stu = ['张三', 18, ''] // 虽然每个值都有,但是在有些时候,我们不知道那个值对应的是什么,这个时候就可以使用对象

使用对象则会更加清晰明了

let stu = {
    name: "张三",
  age: 18,
  sex: ""
}

 

 

 

 

 

 

 

posted on 2023-11-04 15:42  五毛钱咩  阅读(7)  评论(0编辑  收藏  举报