js入门第一篇
简介:JavaScript 运行在客户端(浏览器)是一种客户端语言,javascript的引擎被称为JavaScript引擎,为浏览器的一部分广泛用于客户端的脚本语言
应用场景:网页特效, 服务端开发(Nood.js),命令行工具(Noode.js),桌面程序(Electron),App(Cordova), 控制硬件-物联网(Ruff),游戏开发(cocos2d-js)。
js的组成: ECMAScript 是js的核心, DOM 文档对象模型 (可以操作浏览器窗口 比如:弹出框 控制浏览器跳转 获取分辨率等) BOM 浏览器对象模型 (可以把HTML看做是文档树 通过DOM体统的API可以对书上的节点进行操作)。
一、 变量定义规则
1. 变量声明
var 变量名=值; var 变量名; 先申明变量 以后在赋值 变量的命名规则和规范 规则-必须遵守,不遵守会报错 由字母、 数字、下划线、$符号组成 不能以数字开头 不能是关键字和保留字 如 for while 区分大小写 规范-建议遵守 变量名必须有意义 遵守驼峰命名法 首字母小写 后面的单词的字母大写 如:userName 案列 交换两个变量的值 通过第三个变量来做临时存储
二、 数据类型
1. 简单数据类型
Number
十六进制 一般会加前缀 0x 来和十进制区分
浮点数
判断一个变量是否是数字: NaN isNaN 判断是否是数字
string
\ 转义
\n 换行
\t 制表符 一般代表四个空格
\r 回车
获取一个字符串长度length
console.log(msg.length)
字符串拼接+ (+有两种含义 跟python一样)
如果+的一遍是字符串一遍是数值类型 会先把数值类型自动转换成字符串然后在进行拼接
Boolean
true和false (区分大小写)
计算机内部 1为true 0为false
Underfind Null
undefined 表示一个声明了没有复制的变量
null表示空,变量的值如果想设置为null 必须手动设置
2. 复杂类型
复杂数据类型 Object 数组 获取变量的类型typeof console.log(typeof age); 字面量 在源代码中一个固定值的表示法 注释 单行注释 // 用来描述下一行的作用 多行注释 /* */
3. 数据类型转换
数据类型转换 1. 转换成字符串的方法 toString console.log(num.toString()); ps: null undefined没有toString方法 2. String() 一般不用来转换null和undefined 3. 字符串拼接 加上一个空字符串即可 console.log(typeof(isRight + '')) ps: typeof 可以直接空格写变量 加括号优先执行括号 其他数据类型转换成数值类型 1. Number() console.log(Number(isRight)) 当number把字符串转换成数值的时候 如果字符串中有一个字符不是数字的 时候,会返回一个NaN 2. parseInt() 无法把布尔转换成字符类型 转行字符串的时候如果遇到数字就会转换数字,如果遇到非数字就会返回就会把数字提取出来 转小数时 不解析点 3.parseFloat() 无法转换布尔 跟parseInt 一样 如果只有整数 就解析整数, 一般能解析一个点 4. 取正数或者去负数+ - 直接在字符串的变量名前加正号或者负号 也可以转换布尔 5. 字符串-0 转换成布尔 Boolean() 非零非空非NaN就是True
4. 算术符
运算符 Operator 算术运算符 + - * / % 跟数学里面一样 唯一的区别就是 5/0 等于无穷大 5%0 等于NaN 一元运算符 表达式有一操作数和一个操作符一个表达式组成 ++、 -- 只有一个操作数的运算符 ++ 自身加1 前置++ 表达式 先让num自身+1 然后再返回表达式的结果 后置++ 表达式 先返回表达式的结果 再回在对其自身加1 -- 自身减1 原理同上 逻辑运算符(布尔运算符) 1. && 与 两个操作数同时为true 结果为true 否则为false 2. || 或 一个操作为true 结果为true 3 ! 非 取反 (一元运算符) 关系运算符 (用来比较两个) < > >= <= (比较大小的) == != (比较相等的) === !== (和上面的区别是既比较值又比较类型) 赋值运算符 += -= *= /= %= 运算符优先级 1.()优先级最高 2. 一元运算符 3. 算数运算符 4. 相等运算符 5. 逻辑运算符 7. 赋值运算符
We are down, but not beaten. tested but not defeated.