JavaScript基础
- 对大小写敏感
- 忽略多余的空格
- 对代码进行折行
- 字符串 + 数字 = 字符串
变量
命名语法
var x = 6;
var answer = '字符串';
var x1=34.00 //小数
var t = true //布尔类型
var cars=['a','b','sdfg3'] //数组
// 数组2
car cars = new Array();
cars[0] = '成员1';
cars[1] = '成员2';
Undefined 和 Null
- Undefined 这个值表示变量不含有值。
- 可以通过将变量的值设置为 null 来清空变量。
函数
语法
function functionname(var1,var2) //这里可以传参数
{
这里是要执行的代码
return 值; // 可以有返回值
}
判断语法
语法 | 作用 |
---|---|
if 语句 |
只有当指定条件为 true 时,使用该语句来执行代码 |
if...else 语句 |
只有当指当条件为 true 时执行代码,当条件为 false 时执行其他代码 |
if...else if...else 语句 |
只有使用该语句来选择多个代码块之一来执行 |
switch 语句 |
选择要执行的多个代码块之一 |
switch案例
switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
n 与 case 1 和 case 2 不同时执行的代码
}
类型转换
转换方向 | 语法 |
---|---|
数值转符串 | 字符串+数值=字符串 、数字.toString() |
字符串转数值 | parseInt(stringNum) 、parseFloat(stringNum) |
转换boolean | Boolean(非0及真) |
循环语句
循环类型 | 作用 |
---|---|
for |
循环代码块一定的次数 |
for/in |
循环遍历 |
while |
为 true 时循环 |
do/while |
先执行循环 再判断 |
for/in
for (var i=0;i<cars.length;i++)
{
document.write(cars是一个数组,这里循环数组);
}
//遍历for in
for (x in person){
person是数组
}
循环中断
中断方法 | 作用 |
---|---|
break |
跳出循环 |
continue |
跳过当前循环 |
捕捉异常
语法 | 作用 |
---|---|
try |
捕捉 |
catch |
处理错误 |
throwlse |
语句创建自定义 |
语句 try 和 catch 是成对出现的
try
{
//在这里运行代码
}
catch(err)
{
//在这里处理错误
}
本地验证
- 用户是否已填写表单中的必填项目?
- 用户输入的邮件地址是否合法?
- 用户是否已输入合法的日期?
- 用户是否在数据域 (numeric field) 中输入了文本?
常用内置对象
数组Array
创建数组
方法1:(推荐)
var colors = ['red','color','yellow'];
方法2:构造
var colors2 = new Array();
赋值
var arr = [];
//通过下标进行一一赋值
arr[0] = 123;
arr[1] = '哈哈哈';
arr[2] = '嘿嘿嘿'
常用方法
语法 | 作用 |
---|---|
concat() |
数组合并 |
join() |
数组转字符串 |
pop() |
删最后一个元素 |
shift() |
删第一个元素 |
unshift() |
数组头添加一元素,返回新的长度 |
slice(start,end) |
返回数组的一段 |
push() |
末尾添加元素,返回新长度 |
sort() |
排序 |
reverse() |
排倒序 |
length |
取长度 |
字符串
常用方法
语法 | 作用 |
---|---|
charAt() |
返回指定索引的位置的字符 |
concat() |
连接字符串 |
match() |
找到一个或多个正则表达式的匹配 |
replace(a,b) |
字符串b替换了a |
search(stringObject)) |
检索与正则表达式相匹配的值 |
slice(start,end) |
返回数组的一段 |
indexOf() |
定位字符串中某一个指定的字符首次出现的位置 |
replace() |
字符串中用某些字符替换另一些字符 |
… | … |
Date日期
常用方法
语法 | 作用 |
---|---|
getDate() |
返回月份中的第几天 |
Date() |
当天的日期和时间 |
getMonth() |
返回指定日期对象的月份(0-11) |
getFullYear() |
返回指定日期对象的年份(四位数年份时返回四位数字) |
getDay() |
日期对象的星期中的第几天(0-6) |
getHours() |
日期对象的小时(0-23) |
getMinutes() |
日期对象的分钟(0-59) |
getSeconds() |
日期对象的秒数(0-59) |
… | … |
内置对象Math
语法 | 作用 |
---|---|
Math.floor() |
向下取整,称为”地板函数” |
ath.ceil() |
向上取整,称为’地板函数’ |
Math.max(a,b) |
求a和b中的最大值 |
Math.min(a,b) |
求a和b中的最小值 |
Math.random() |
随机数,默认0-1之间的随机数,公式min+Math.random()*(max-min),求min~max之间的数 |
定时器
setTimeOut() 用于延迟执行某方法或功能
只在指定时间后执行一次
//定时器 异步运行
function hello(){
alert("hello");
}
//使用方法名字执行方法
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout("hello()",3000);//使用字符串执行方法
window.clearTimeout(t1);//去掉定时器
setInterval() 用于刷新表单,对于一些表单的假实时指定时间刷新同步,动画效果等
在指定时间为周期循环执行
//实时刷新时间单位为毫秒
setInterval('refreshQuery()',8000);
/* 刷新查询 */
function refreshQuery(){
console.log('每8秒调一次')
}
正则匹配
通过 new 关键词来定义 RegExp 对象
RegExp 对象有 3 个方法:test()、exec() 以及 compile()。
var re = new RegExp("要查找的文字","修饰符");
- 修饰符
i:不区分大小写
和g:全局匹配
语法 | 作用 | 案例 |
---|---|---|
test() |
检测字符串是否包含定义字符模式,返回布尔 | re .test('被查找的文本') |
exec() |
匹配到了返回数组、没匹配到返回null |
match返回数组
search()
split()
// 字符串.match(正则) 返回找到的数组(全部)
var str = 'hello world';
var reg = /o/g;
// 直接用match(正则的方法)
str.match(reg);