哈喽小伙伴们,本文将收录在JavaScript【前端童子功】这个专栏里;这个专栏里边会收录一些JavaScript的基础知识和项目实战;希望大家可以多多支持,你们的支持就是我创作的动力;让我们一起来看看吧
变量是储存数据的容器
先访问后声明就叫做变量提升。
console.log(num);
var num=10
console.log(num); let num=10;
let num=10; let num=20;
const num=20
关键词 | 描述 | 版本 |
---|---|---|
var | 声明一个变量,可赋一个初始化值。 | ES5 |
let | 声明一个块作用域的局部变量,可赋一个初始化值。 | ES6 |
const | 声明一个块作用域的只读的命名常量。 | ES6 |
var a;a=10;
var a=10;
var x,y,z;
x=10,y=20,z=30
var x=10,y=20,z=30;
数字,字母,_,$
组成,不能以数字开头。undehined
;var a=10;
a=20;
按照数据在内存中的存储位置进行的分类。
初始数据类型:存放在栈区;引用数据类型:存放在堆区。
分类 | 类型 | 值 |
---|---|---|
初始类型 | undefined | undefined |
null | 表明 null 值的特殊关键字。 JavaScript 是大小写敏感的,因此 null 与 Null、NULL或其他变量完全不同。 | |
string | 双引号引起来的数据 | |
number | 包括整型和浮点型。科学计数法。支持二进制、八进制、十进制、十六进制。 | |
boolean | true/false | |
Symbol | 表示独一个一无二的值。(ES6新增) | |
引用类型 | Object | 包含相关属性和方法的一个集合。包含Function、Array、Object |
类型 | 值 | 检测结果 |
---|---|---|
undefined | undefined,变量声明未赋值 | undefined |
null | null | object |
string | 单双引号引起来的内容 | string |
number | 整数,浮点数,十进制,二进制,八进制,十六进制,科学计数法,最大值,最小值 | number |
boolean | true,false | boolean |
Symbol | 独一无二的值 | |
Object | 数组(object),函数(function),对象(object) | object,function,object |
NaN | number+undefined | number |
+
-
*
/
%
** 幂运算
四则运算
+
number
型做加法运算。
++ 自增
++var
: ++
在前,要先算++
,在做其他运算。 var++
: ++
在后,要先算其他,在做++
运算。
-- 自减
--var
: --
在前,要先算--
,在做其他运算。
var--
: --
在后,要先算其他,在做--
运算。
数字和字符串相减 :
字符串和字符串相减 : 和数字和字符串相减规则相同
'11a'-1 //NaN
'11'-1 //10
num + ""
num - 0
true*null //0
'11'*'11' // 121
'1a'*22 //NaN
11/null //Infinity
'11'/'11' // 1
'11a'/'11' // NaN
取余,即取余数,如 10 % 3
则指 10除以3的余数
用于取一段范围的值
一般不用于小数,因为结果不确定(不精确)。
Undefined 与所有数据类型的 取余 都为NaN
其余数据类型先进行转换,能转为数字则进行取余运算,否则为NaN
''%1 // 0
11%0 // NaN
11%null // NaN
判断数字num是否是偶数:
if(num%2==0){
alert(num + "是偶数")
}
x**y
取x的y次方,同
Math.pow(x, y)
3 ** 2 //9
效果同
Math.pow(3, 2) //9
关系运算符的运算结果为boolean。(true/false)
==
数值相等
0!=null
(true)0!=undefined
(true)undefined
==null
(true)NaN
==NaN
(false)===
数值相等,数据类型相同
> < >= <=
两个操作数都是number型,按照数据大小进行比较。
一个是number型,另一个是字符串,会先将字符串转换为数字型,能转换成功按照数字大小比较,转换不成功,返回false。
任何数与NaN
比较,返回的都是false。
两个操作数都是字符串,按位按照ASCII
码表进行比较。
=
;+=
;-=
;*=
;/=
;%=
;**=
var a=23;a+=5; //a=28
运算符 | 实例 | 等价于 |
---|---|---|
= |
a=25 | a=25 |
+= |
a+=25 | a=a+25 |
-= |
a-=25 | a=a-25 |
*= |
a*=25 | a=a*25 |
/= |
a/=25 | a=a/25 |
%= |
a%=25 | a=a%25 |
**= |
a**=3 | a=a^3 |
在JavaScript逻辑运算中,0、“”、null、false、undefined、NaN都会判为false,其他都为true。
与:希望得到一个假值
&&
或:希望得到一个真值
||
非
!
boolean
值总结: 与或运算,哪一侧能决定表达式真假性,则结果取哪一侧,结果不转换。
与或运算左侧结果已经确定整个表达式真假性,则右侧不再计算
只能操作一个操作符的运算符叫做一元运算符。
+
-
,
:逗号 —— 分隔数据var num1 = 1, num = 2, num3 = 3;
```
()
:小括号运算符 —— 提升算术优先级var i = 1 + 3 * 5;
console.log(i); // 16
var l = (1 + 3) * 5;
console.log(l); // 20
```
基于某些条件对变量进行赋值的条件运算符。
var 变量=表达式?值1:值2
当表达式的结果为真时,将值1的值赋值给变量;当表达式的结果为假时,将值2赋值给变量.
更多Node知识以及API请大家持续关注,尽请期待。各位小伙伴让我们 let’s be prepared at all times!
✨原创不易,还希望各位大佬支持一下!
点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!