学习笔记
基本数据类型、数组、条件表达式与循环
1.变量
通常,变量是用来存储数据的容器,在编写代码时,使用变量比使用具体数值来的更方便些。
变量的使用通常分为两个部分:
- 声明变量
- 初始化变量,即给变量赋初始化值
变量的命名通常允许使用字母、数字、美元符号$、下划线组成,但不能以数字开头:
- 2day❌
- _2day✅
变量的初始化有两种方式,一种是先声明,再赋值;另一种是声明并赋值:
- var a; a=1;
- var a = 1;
JavaScript中的变量是区分大小写的:
- var a = 'Lower';
- var A = 'Upper';
这两个变量是两个变量。
2.操作符
操作符,指能输入一个或两个变量,并返回相应结果值的符号。比如 1+2 = 3,+号就是操作符。
列出一些操作符:+,-,*,/,%(取模运算,就是求余数, 5%3==2),++自增运算符,--自减运算符。
其中++和--运算符,分前置运算和后置运算,这里不展开说明。而我们常用的赋值运算符=是简单赋值运算符
JavaScript中还有一种复合操作符,比如:
+=, a += 1 ===> a = a + 1;
-=, a -= 1 ===> a = a - 1;
*=, /=, %= 操作同理。
3.基本数据类型
JavaScript的数据类型分为基本数据类型和非基本数据类型,基本数据类型分为:
- 数字number,包括整数和浮点数
- 字符串string
- 布尔值boolean
- undefined
- null
除了上面列的5种基本数据类型外,其他的都为非基本数据类型。
查看类型操作符----typeof
想知道变量的数据类型,可以调用typeof,对于不同的数据类型,可返回一下结果:
- 'number'
- 'string'
- 'boolean'
- 'undefined'
- 'object'
- 'function'
Infinity
Infinity是一个特殊的数字,它所代表的是超出JavaScript处理范围的数字,typeof Infinity仍然返回‘number’,Infinity跟任何数值运算返回的都是Infinity,Infinity代表最大值,那怎么代表最小值呢?答案就是- Infinity,但又有同学会问了,那我用Infinity+(- Infinity)是不是会返回0呢,答案是错的,最后返回NaN,即不是数值的意思。
NaN
NaN代表不是数值,当在数值运算中使用了不合法的变量是就会产生这个结果,比如:
- 1 * '10s' ===> NaN
只要运算中有NaN那么结果一定返回NaN,如 1+1+NaN ===> NaN
字符串
字符串通常指某段表示文本的字符序列,在使用时用单引号或双引号将内容包裹起来。如果说1是一个数字,那么'1'就是一个字符串。字符串的拼接通常用+号进行拼接。
字符串的转换是重点,但篇幅过大,这里不做详细讲解。
var s = '1';
//s * 1 ===> 1; typeof s === 'number';
//s++ ===> 2; typeof s === 'number';
//如果通过乘法转换失败,会返回NaN;
要将数字转换为字符串也可以通过加法运算:
var s = 1;
s = s + '' ===> '1'; typeof s === 'string';
布尔值
布尔值只有两个值,true, false,注意:'true'和' false'不是布尔值,而是字符串类型。
JavaScript中有三种逻辑运算符:
- !(逻辑非)
- &&(逻辑与)
- ||(逻辑或)
我们要表示事物的非真状态,常用逻辑非运算符:
var a =true;
!a ===> false;
如果我们执行两次逻辑非的话,应该会返回变量的原值:
var a = true;
!!a ===> true;
如果是非布尔值,通常会转换成布尔值,如:
var a = 'one';
!!a ===> true;
实际上,除了以下几种值,大部分值转换为布尔值都是true:
- ''
- false
- 0
- null
- undefined
- NaN
以上6个值也称为falsy,也称为假值