变量
语法:
- 声明:
var 变量名; - 赋值:
变量名 = 变量值; - 初始化:
var 变量名 = 变量值;
命名规范:
- 一般以【
字母,_,$】开头,中间或后面可有[字母、数字、$]。 - 采用【驼峰命名法】,即有多个单词,第一个首字母小写,后面的首字母大写。
注意:
- 每一行代码结束都应该有分号
; - js区分大小写。
- 字符串变量可用【双引号】,也可单引号。
注释
- 单行注释:
// 注释 - 多行注释:
/* 注释 */
数据类型
类型
number:数字类型(int+float)。
- 范围:
[Number.MIN_VALUE,Number.MAX_VALUE],即[5e-324,1.797693134..e+308] - 注意: 如果
var num赋的是非十进制的值,会自动转化为十进制。如var num=012;则num=10 - number小数存在精度丢失,比如【0.1+0.2 != 0.3】。
- NaN:不是一个数字,而【NaN != NaN】。所以判断NaN的方法只能用isNaN()
string:字符串类型
-
转义符:
\t、\n、\'、\"、\\、\b(退格)、\f(换页)、\r(回车)
-
字符串拼接:加号"+"
-
隐式转换:只有"+"特殊!
- 字符串拼接时,只要有一个是string,其他的即使number,"+"所起的作用依然是【拼接】。如
"10" + 10 = "1010" - 字符串运算,有一个是string,其他是number,减乘除时,
-*/所起的作用是【计算】。如"10" - 5 = 5,"10" * 5 = 50, 10 / "5" = 2
- 字符串拼接时,只要有一个是string,其他的即使number,"+"所起的作用依然是【拼接】。如
boolean:布尔类型,只有true(1)和false(0)。
null:空类型,值只有一个null
- 一个对象指向为空了,此时可以赋值为null。
var x = null,但typeof(x)不是null,而是object
undefined:未定义,即【只声明未赋值】,值只有一个undefined。
- 函数没有返回值,如果接收了,结果也是undefined。
- 如果一个undefined变量和一个number变量进行计算,得到的结果是NaN
object:对象。
function: 函数。
查看类型
typeof(变量)或typeof 变量:获取变量的数据类型
类型转换
-
string -> number:
(0)parseInt(var):-> int类型,不严谨,如parseInt("10.21w")=10
(1)parseFloat(var):-> float类型,不严谨,如parseFloat("10.21w")=10.21(2)
Number(var):-> number类型,但比上面两种方式严格,如Number("10w")=Nan -
其他 -> string:
(0)var.toString():要求var不是undefined、null
(1)String(var):var可以是undefined、null -
其他 -> boolean:
(0)Boolean(var):为false的变量包括0,"",null,undefined。
运算符
严格运算符
| 运算符 | 含义 | 例子 |
|---|---|---|
== | 不严格等于 | “1”==1 :true 1==1:true |
=== | 严格等于 | “1”===1:false 1===1:true |
!= | 不严格非等 | |
!== | 严格非等 |
优先级
-
优先级:
0.圆括号:
()
1.一元:++--!
2.算数:*/%(大于)+-
3.关系:><>=<=
4.相等:=====!=!==
5.逻辑:&&(大于)||
6.赋值:= -
面试题:
var i = 1; var j = i++ + i++; // j = 3 var k = ++i + ++i; // k = 5
1万+

被折叠的 条评论
为什么被折叠?



