JS基础1
变量的类型
(因为存放进变量中的数据是放在内存中的,计算机只识别0,1,所以需要对不同类型的数据进行编码,编码的结果会导致所需空间不同,所以JavaScript中分成很多种数据类型,以便计算机储存时使用)
- 数字类型(number):1234567890 int(integer):整型 float:浮点型(小数)
- 字符类型(string):'123456',"字符串类型",.....(有单引号或者双引号)
- 未定义类型(undefined):这是一种特殊类型,当变量被声明但是没有被赋值的时候,那么该变量的类型为undefined;
- 布尔值类型(boolean):true,false;
- 对象类型:object;
- 数组类型(array);
- 函数类型:Function;
- symbol --- ES6新增
怎样直观地区分不同的数据类型呢?
一个关键字 typeof
typeof返回有六种值: number、string、boolean、undefined、object、function
js有五(六)种基本数据类型:number、string、boolean、undefined、null、(symbol)
两种引用类型:object、function
从另外一个角度来说:JS有两种特殊数据类型: null、undefined
变量使用小技巧: 声明一串变量:var a=1,b=2,c=3;
js语言里面的分号可以省略
变量:可变的量
var a = "hello world";
a = "<strong>我很man</strong>";
注意: 再次修改变量的值的不是不需要再写 var
变量命名规范:(匈牙利命名法:驼峰命名法)
变量名首字符必须为字母(a-z A-Z),下划线( _ ),或者美元符号( $ )开始
余下的字符可以是下划线、美元符号或任何字母或数字字符
变量名大小写敏感(var a 和 var A 是不一样的两个变量)
运算符
算数运算符
加、减、乘、除、求余/取模(+ 、- 、* 、/ 、%)
余数: a/b整除之外的剩余的数字
10 / 3 = 3 ... 1
10 % 3 = 1
3 % 10 = 3
取余:大数对小的那个数取余结果为整除之后的余数
小的那个数对大数求余的结果就是小的那个数本身
关系运算符
==(相等) 、!=(不等于)、<(小于) 、>(大于) 、<=(小于或者等于) 、>=(大于或者等于)
判断运算符两侧的结果是否满足规则,满足结果即为true,否则false
= 和 == 以及 === 的区别
- 一个等号是赋值,将等号右边的值赋给左边
- 两个等号是判断相等,相等结果为true,不等为false,不考虑数据类型,只判断值
- 三个等号要求全等,不仅值要相等,类型也必须相等
逻辑运算符
-
逻辑与:&&
“和”的意思我和彭于晏都是帅哥必须两个条件均为true结果才为true-
逻辑或:||
“或”的意思我或彭于晏是帅哥只要有一个条件为true结果就为true必须两个条件均为false结果才为false-
逻辑非:!
“不”的意思我不是帅哥对本身的结果取反 -
变量类型转换
显式转换
parseInt()、parseFloat()、Number()、toString()、String()
toFixed()可以用来将数字保留几位小数,并且数据类型变为字符串
parseInt() 方法首先查看位置 0 处的字符,判断它是否是个有效数字;如果不是,该方法将返回 NaN,不再继续执行其他操作。 但如果该字符是有效数字,该方法将查看位置 1 处的字符,进行同样的测试。这一过程将持续到发现非有效数字的字符为止,此时 parseInt() 将把该字符之前的字符串转换成数字。
parseFloat()跟parseInt()极其相似,不过第一个出现的小数点是有效字符。如果有两个小数点,第二个小数点将被看作无效的。parseFloat() 会把这个小数点之前的字符转换成数字。
Number() 是一个非常严格的转换,只要不满足数字,都会直接转换为NaN
NaN:Not a Number
是一个特殊值,说明某些算术运算(如求负数的平方根)的结果不是数字(本来期望得到一个数字,但是结果没有计算成功)。方法 parseInt() 和 parseFloat() 在不能解析指定的字符串时就返回这个值
isNaN(num)函数,该函数判断num变量的值是否是NaN,是NaN返回true,数字返回false
ECMAScript 中可用的 3 种强制类型转换如下:
运算符的简写
- Boolean(value) - 把给定的值转换成 Boolean 型;
- Number(value) - 把给定的值转换成数字(可以是整数或浮点数);
- String(value) - 把给定的值转换成字符串;
运算符的简写
赋值运算简写
+=、-=、*=、/=
a = a + 1 a += 1
a = a - 1 a -= 1
a = a * 1 a *= 1
a = a / 1 a /= 1
a++ a += 1 a = a + 1
a-- a -= 1 a = a - 1