JavaScript
是世界上最流行的语言
运行在客户端(浏览器)的脚本语言,基于node.js进行服务端(后端)编程
- 编译型语言:java,所有的代码都给你读一遍
- 解释性语言:从头到尾从新开始做一遍
最初的目的:表单动态效验(密码强度检测)
组成
ECMAScript:(ECMA欧洲计算机制造联合会)是JavaScript核心,规定了js语法,一套js语言设计标准
- BOM:提供给程序员操作浏览器功能的api(方法),操作浏览器窗口
- DOM:提供给程序员操作页面元素的api,通过dom提供的api对页面上的各种元素进行操作
JS代码书写位置
行内
- 写在HTML标签的事件属性(以
on
开头的属性) - <input type="button" value="点我试试" onclick="alert('Hello World')" />
- 可读性差,不方便阅读;引号易错,容易混淆
内部
- 写到
<script>
标签中 - <script> alert('Hello World~!');</script>
- 放在head最下边
外部
- 利于HTML页面代码结构化,把大段 JS代码独立到 HTML页面之外。美观,也方便文件级别的复用
- <script src="outdoor.js"></script>
- 放在<script></ script>上面
变量
声明变量:var 变量名 = 变量值;
变量命名规则和规范
-
规则
- 不能 是关键字、保留字 和 代码符号,例如:var、for、while、&
- 区分大小写,不能以数字开头
- 由字母(A-Za-z)、数字(0-9)、下划线(_)、美元符号( $ )组成
-
规范
- 变量名必须有意义
- 遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。如:
usrName
和usrPassword
和xian
和xiAn
注释
单行注释
- 快捷键 ctrl + /
多行注释
- 快捷键 alt + shift + a
数据类型
简单数据类型
-
Number 数值类型
只有一种数字类型,既可以用来保存
整数值
,也可以保存小数
-
浮点数的精度问题
- 浮点数值的最高精度是 17 位小数
-
isNaN(x) 方法:判断一个变量是否为
非数值
的类型- X是数值,返回false
- X不是数值,返回true
-
Boolean 布尔类型
-
true 和 false
- 1 返回true ,0返回false
-
-
String 字符串类型
-
用于表示
文本数据
,语法为 双引号""
和 单引号''
-
字符串转义符
- \n 换行符
- ' 单引号 '
- " 双引号 "
- \t Tab
-
字符串的长度
-
length
属性可以获取整个字符串
的长度 - 长度包括标点符号
-
-
字符串的拼接
-
多个字符串之间可以使用
+ 号
进行拼接- 字符串 + 任何类型 = 拼接之后的新字符串
- 口诀:数值相加 字符相连
-
-
-
-
Undefined 未定义类型
- 一个声明后没有被赋值的变量会有个默认值 undefined。
null 空
复杂数据类型
获取检测变量的数据类型
-
typeof
- typeof null 返回 "object"
数据类型转换
-
toString() 把变量转成字符串
-
把一个逻辑值转换为字符串,并返回结果
- 布尔类型的 toString() 只会输出 "true" 和 "false"
-
-
String() 强制转换 把特殊值转成字符串
- 有些值没有toString(),这个时候可以使用String()。
-
加号拼接字符串和字符串拼接的结果都是字符串
- 当 + 两边 一个是
字符串类型
,另一个是其它类型
的时候,会先把其它类型
转换成字符串
再进行字符串拼接,最后返回字符串
- 当 + 两边 一个是
转换为数值
-
parseInt(string) 函数
-
将string类型参数转成整数
-
规则1.永远记住它是取整函数
- var numLove = parseInt(18.08); // 18
-
规则2.如果第一个字符不是数字符号或者负号,返回NaN
- var numLove = parseInt("aboard211"); // NaN
-
规则3.如果第一个字符是数字,则继续解析直至字符串解析完毕 或者 遇到一个非数字符号为止
- var numLove = parseInt("520littlecat"); // 520
-
-
-
parseFloat(string) 函数
-
将string类型参数转成浮点数
-
parseFloat函数如果用来转换 整型数值字符串,则也是返回 整型数值
- var num = parseFloat("12"); // 12,而不是 12.0
-
-
-
Number() 强制转换函数
- 里面如果只要出现非数字字符或者undefined, 则就返回 NaN
- 如果该值是空字符串、数字0、或null、false 则返回 0 如果是 true 则返回 1
-
js 隐式转换
-
利用算术运算隐式转换
- 进行算术运算,实现了字符串到数字的类型转换
-
转换为Boolean值
- 代表 空、否定的值 会被转换为 false 有五种 “ ''、0、NaN、null、undefined 、false
- 其余任何值都会被转换为 true
基础输入输出
alert() 显示消息
- 消息弹出窗
prompt(info) 获取输入
-
括号中的参数 info 是用来显示在输入窗给用户看的提示信息
- 用户输入的 任何内容 都是一个 字符串