JS语法
js书写位置
<head>内部。<body>内部。
js注释
- 单行注释 ctrl+/
//。 - 多行注释 ctrl+shift+/
/* */。
常用语句
- 警示框:alert(提示内容)
- 对话框:prompt(提示内容,输入框默认值)
console控制台
- 功能:内部可以查看 HTML、css 代码,调试代码错误。
- 使用方法:浏览器中右键点击审查元素(检查),都可以打开控制台。快捷键: F12。
- console.log(内容)方法:打印内容到控制台。
- console.dir(对象名)方法:打印对象到控制台。
js数据类型
字面量(常量)
数字
- 整数(分进制,默认转化为十进制)
// 十进制
console.log(10);
console.log(-10);
// 八进制
console.log(01);
console.log(010);
console.log(0100);
console.log(01000);
console.log(0o1000);
console.log(0O1000);
// 十六进制
console.log(0x1);
console.log(0x10);
console.log(0x100);
console.log(0x110);
- 浮点数(小数) 如果浮点数是大于0 小于1的,可以省略小数点前面的0不写。
浮点数的精度问题:0.1 + 0.2; 结果不是 0.3,而是:0.30000000000000004
- Infinity 无穷 Infinity 本身就是一个数字。
最小值:Number.MIN_VALUE,这个值为: 5e-324
最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308
无穷大:Infinity
无穷小:-Infinity
- NaN 表示一个不正常的数
isNaN(): 判断一个数据是不是一个NaN。
NaN 与任何值都不相等,包括他本身
字符串
- 写法:是用一对单引号(' ')或双引号(“ ”)及引号内的字符构成
字符串中如果字符包含了双引号,则其外部应该由单引号标示,反之相同。 转义符号
\
- 在字符串中可以使用转义符 \ 加普通字母,替代一些特殊字符
\n 换行
\t Tab制表
- 字符串中可以使用转义符 \ 将特殊功能字符变为普通字符。
' 单引号
" 双引号
\ 反斜杠
变量
- 使用关键字
var+空格+变量名+;定义变量。 - 命名规则:第一个字必须是字母,后面可以是数字,下划线,美元符号,字母区分大小写,不可用关键字。
数据类型
简单数据类型
- string---字符串类型
- number---数字类型
- undefined---undefined类型
- Boolean---布尔类型
- null---null类型
检测数据类型
- 使用 typeof 的方法进行数据检测
数据类型转换
- 转字符串:String()
- 转数字:Number()
Number("");//0
Number("123abc");//NaN
Number(true);//1
Number(false);//0
Number(undefined);//NaN
Number(null);//0
- 字符串转整数:parseInt()
字符串中,必须是纯数字字符串或者数字字符开头的字符串,才能转换为正常数字,且只取整数部分,如果不是数字打头的字符串,会转换为 NaN
- 字符串转浮点数:parseFloat()
满足浮点数数字字符必须在字符串开始,如果不在开始返回值都是NaN。
- 转布尔类型:Boolean()
转为 false :NaN、0、“”空字符串、null、undefined
转为 true :非0 非NaN数字、非空字符串
操作符
算数运算符
- + - * / % ()
- %:取余,取模。 a / b = c 余 d,就说a % b = d。
- 运算顺序:先算乘除取余、再算加减,有小括号先算小括号。
- 隐式转换:
纯数字字符串: 对应的数字
转换为1: true
转换为0:false、null、“”空字符串、空白字符串
转换为NaN:undefined、非空非纯数字字符串
非正常情况
- NaN参与的运算:得到的结果都是NaN
- Infinity参与的运算:
//为NaN
Infinity % 5
-Infinity % 5
Infinity % Infinity
Infinity / Infinity
Infinity - Infinity
//任何数除以Infinity都为0
//任何数对Infinity取余都为自己
比较运算符
- > < >= <= == === !== !===
- == 和 === 的区别
==只是数值相等===数值相等且数据类型也相等 非正常情况
- NaN参与:不等于和不全等于结果是 true,其他的都得到 false
- 字符串比较:字符编码顺序,从前往后 0-9,A-Z,a-z,前面的小于后面的
逻辑运算符
- && || !
- 转为false:NaN、0、“”空字符串、null、undefined
- 转为true:非0 非NaN数字、非空字符串
赋值运算符符
= 等于
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
%= 取余等于
++ 递加
-- 递减
- 一元运算符
a++:a=a+1先参与运算,后自加。
++a:a+1=a先自加,后参与运算。
运算优先级
- () 优先级最高
- 一元运算符 ++ -- !
- 算数运算符 先* / % 后 + -
- 关系运算符 > >= < <=
- 相等运算符 == != === !==
- 逻辑运算符 先&& 后||
- 赋值运算符