JavaScript
1.概念:一门客户端脚本语言。
<脚本语言:不需要编译,直接可以被浏览器解析执行>
2.功能:可以来增强用户和HTML页面的交互过程,可以来控制HTML元素,让页面有一些动态的效果,增强用户体验。
JavaScript = ECMAScript + JavaScript自己特有的东西(BOM、DOM)
ECMAScript:客户端脚本语言的标准。
1.基本语法:
a 与HTML结合方式。
1. 内部JS:
定义<script>,标签体内容就是js代码。
2. 外部JS:
定义<script>,通过scr属性引入外部的js代码。
注意:
1.<script>:可以定义在HTML页面中的任何地方。但是定义的位置会影响执行顺序。
2.<script>:可以定义多个。
b 注释:
1. 单行注释:// 注释内容。
2. 多行注释:/*多行内容*/
c 数据类型:
1. 原始数据类型:(基本数据类型)
a number:数字。整数/小数/NaN(Not a Number ,一个不是数字的 数字类型)
b string:字符串。字符串 “abc”,“a”,‘abc’
c Boolean:true 和 false。
d null:一个对象为空的占位符。
e undefined:未定义。如果一个变量没有给初始化的值,则会被默认赋值为 undefined。
2.引用数据类型: 对象。
d 变量:
1. 变量:一小块存储数据的内存空间。
2. Java语言是强类型语言,而JavaScript语言是弱类型语言。
强类型:在开辟变量存储空间时,定义了空间将来存储数据的数据类型。只能存储固定类型的数据。
弱类型:在开辟变量存储空间时,不定义将来存储数据的数据类型,可以存放任意类型的数据。
3.语法:
var 变量名 = 初始化值
4.typeof运算符:获取变量的类型。
注:null运输后得到object
e 运算符:
1. 一元运算:
++、--(自增自减)
2. 算数运算符:
+ - * / %
3. 赋值运算符:
= 、 += 、 -= 、、、
4. 比较运算符:
> < 、==、 ===(全等于)
5. 逻辑运算符:
&& || !
6. 三元运算:
? :
f 流程控制语句:
1.if else
2.switch :
在 Java 中,switch 语句可以接受的数据类型:byte int short 枚举 String。
在 js 中,switch 语句可以接受任意的原始数据类型。
3. while
4. do while
5. for
g js 的特殊语法:
1.语句以 ; 结尾,如果一行只有一条语句则可以省略。
2.变量定义时使用 var 关键字,也可以不使用
用 :则定义的是局部变量。
不用 :定义的变量是全局变量。
2. 基本对象:
1. function: 函数(方法)对象:
a 创建:
1. var fun = new function(形式参数,方法);//不常用。
2. function 方法名称(形式参数列表){
方法体;
}
3. var 方法名 = function(形式参数列表){
方法体;
}
b 方法:
c 属性:length :表示形参的个数
d 特点:
1. 方法定义时,形参的类型不需要写,返回值类型也不需要写。
2. 方法是一个对象,如果定义名称相同的方法,会覆盖。
3. 在JS中,方法的调用只与方法的名称有关,和形式参数列表无关。
4. 在方法的声明中有一个隐藏的内置对象(数组),arguments,封装所以的实参。
e 调用:
方法名(实际参数列表);
2. Array:数组对象。
a 创建:
1. var arr = new Array(元素列表);
2. var arr = new Array(默认长度);
3. var arr = [元素列表];
b 方法:
1. join(参数):将数组中的元素按照指定分隔符拼接成字符串。
2. push():向数组的末尾添加一个或更多的元素,并返回新的长度。
c 属性:length :表示数组的长度
d 特点:
1. JS中,数组元素的类型可变的。
2. JS中,数组长度可变的。
3. Boolean:
4. Date:日期对象。
1. 创建:
var date = new Date();
2. 方法:
toLocaleString():返回当前date对象对应的时间本地字符串格式。
getTime():获取毫秒值。返回当前如期对象描述的时间到1970年1月1日零点的毫秒值差。
5. Math: 数学对象。
1. 创建:
特点:math 对象不用创建,直接使用。例:Math.方法ming();
2. 方法:
random():返回0~1之间的随机数。含0不含1.
ceil(x):对x进行上舍入。
floor(x):对x进行下舍入。
round(x):把x四舍五入为最接近的数。
3. 属性:
PI。
6. number:
7. String:
8. RegExp:正则表达式对象
a 正则表达式:定义字符串的组成规则。
1. 单个字符:[ ]
如:[a] [ab] [a-zA-Z0-9_]
特殊符号代表特殊含义的单个字符:
\d:单个数字字符[0 - 9]
\w:单个单词字符[a-zA-Z0-9_]
2. 量词符号:
?:表示出现0次或1次。
*:表示出现0次或多次。
+:出现1次或多次。
{m,n}:表示 m <= 数量 <=n
m如果缺省:{,n}:最多n次
n如果缺省:{m,}:最少m次
3. 开始结束符号。
^:开始
$:结束
b 正则对象:
1. 创建
var reg = new RegExp(“正则表达式”);
var reg = /正则表达式/;
2. 方法
test(参数):验证指定字符串是否符合正则定义的规范
9. Global:
1. 特点:全局对象,这个Global 封装的方法不需要对象就可以直接调用。方法名()。
2. 方法:
encodeURI():url编码。
decodeURI():url解码
encodeURIComponent():url编码,编码字节更多。
decodeURIComponent():url解码
parseInt():将字符串转化为数字。
逐一判断每一个字符是否位数字,直到不是数字为止,将前面的数字转化为number。
isNaN():判断一个值是否为NaN。
NaN参与的 == 全为false。
eval():将JavaScript 字符串,转化为脚本代码来执行。
以上就是一些JavaScript的基础