A.你今天学到了什么
一、数组
1.数组的定义2种方式
1.
var arr=[2,3,5];
2.
var b=new Array(); b[0]=1;
//确认数据类型的两种方式
console.log(b instanceof(Array)); //true
console.log(Array.isArray(b)); //true
2.给数组添加元素
//.push(); 从后给一个数组添加元素
var arr=[1,2,3];
arr.push(4);
console.log(arr);
//.unshift(); 从前给一个数组添加元素
arr.unshift(0);
console.log(arr);
3.concat 添加元素
var arr=[1,2,3];
//concat 添加 不改变原来数组的内容
var b=arr.concat(4);
console.log(b);
console.log(arr);
4.克隆数组
// 1.使用push进行克隆
var arr=[1,2,3];
var b=[];
for(var i=0;i<arr.length;i++){
b.push(arr[i]);
}
console.log(b);
/*
2.使用concat添加
[].concat();
*/
var c = [4,5,6];
// var d = c.concat([7,8]);
var d = [].concat(c);
console.log(d);
5.从后删除和从头删除数组元素
//pop();从后删除数组成员
var arr=[1,2,3];
arr.pop();
console.log(arr);
//从头删除
var arr=[1,2,3];
arr.shift();
console.log(arr);
6.更改数组元素
//.splice(indenx,howmany,value); 修改替换 参数 (下标,更改的数量,值)
var arr=[1,2,3];
arr.splice(1,1,"h");
console.log(arr);
7.查询
// arr[index]; index 为数组的下标
//indexOf(); 查询值对应的下标
var a =arr.indexOf(2);
console.log(a);
//查询 参数(开始下标,查询数量)
var b =arr.slice(0,3);
console.log(b);
/*
传一个参数 -->会截取startIndex后面所有的值
slice(startIndex)
*/
var arr=[1,2,3,4];
var b=arr.slice(0);
console.log(b);
8.splice 用法
//splice(index,howmany,item);
// 从index后增加,增加时,howmany传0
var arr=[1,2,3,4];
var b=arr.splice(2,0,"hello");
console.log(b);
// splice(index,howmany); 参数为删除开始下标和数量
var a =[1,2,3,4];
a.splice(0,2);
console.log(a);
9.数组分割符
//join(separator) 将一个数组转为字符串
// separator 是分割符,可以为空 ""
var a =["hello","world","good"];
var b=a.join();
console.log(b);
var c =a.join("*");
console.log(c);
10.排序
var a =[3,5,7,2];
//升序
var b=a.sort(function(a,b){
return a-b;
})
console.log(b);
// 降序
var c=a.sort(function(a,b){
return b-a;
});
console.log(c);
11.求和
var a =[3,46,4];
var sum =a.reduce(function(a,b){
return a+b;
});
console.log(sum);
12.数组颠倒
//reverse 颠倒数组
var a =[2,4,5,6];
var b=a.reverse();
console.log(b);
13.二维数组
//查询二维数组元素
var a =[[1,2],[3,4],"hello world"];
console.log(a[2][0]);
14.字符串
var a ="hello world" ;
//获取字符串的长度
var b=a.length;
console.log(b);
//增加的方法 concat();
var c =a.concat("add");
console.log(c);
//获取对应下标的的字符 chaeAt(index);
var d=a.charAt(2);
console.log(d);
//获取对应字符的下标 indextOf(e);
var e=a.indexOf("h");
console.log(e);
15.字符串截取字段
//截取字段
var a ="hello world";
//参数 开始下标,结束下标 包括开始,不包括结束
var b=a.slice(1,4);
//参数 开始下标,结束下标 包括开始,不包括结束
var subString=a.substring(1,4);
//参数 开始下标,结束下标 包括开始也包括结束
var subStr =a.substr(1,4)
console.log(a);
console.log(b);
console.log(subString);
console.log(subStr);
16.字符串分隔符
// split(separator) 参数 分隔符
var str="hello world";
var a=str.split();
var b =str.split(" ");
var c=str.split("o");
console.log(a);
console.log(b);
console.log(c);
B.正则表达式
1.search(),replace(),match();方法
/* 1.search();
返回搜索字符的下标,如果没有返回-1
2.match();
将配置的内容配置一个数组,字符不存在,返回null
3.replace( ); 替换
**/
var a ="hello world";
var b=a.search("h");
var c=a.match("l");
var d =a.replace("hello","world");
var e=a.replace(/l/g,"*");
console.log(b);
console.log(c);
console.log(d);
console.log(e);
2.正则表达式
//把"l"替换成 "*"
var a ="hello world";
var reg =/l/g;
var b =a.replace(reg,"*");
console.log(b);
3.备选字符集
// 特点:多选一
var a="上海,上天,上去,上海那";
var reg=/上[海天]/g;
var b=a.replace(reg,"**");
console.log(b);
var c ="13213456dd";
var reg=/d/g;
console.log(c.replace(reg,"*"));
var e ="hello WORLD";
var reg=/[a-z]/g;
console.log(e.replace(reg,"*"));
4.预定义字符集
/*
定义:针对常用的备选字符集提供的简化符号
[0-9] 简化为 \d
[0-9a-zA-Z_] 简化为 \w
空格,tab 简化为 \s
除了换行之外任意字符 简化为 .
*/
var a ="hello 123123";
var reg=/\d/g;
var b="fdsaf234353FAS__@#$";
var reg2=/\w/g;
console.log(a.replace(reg,"**"));
console.log(b.replace(reg2,"**"));
5.量词
// 量词:规定字符出现的次数
eg1:
var txt=document.getElementById("txt");
var btn=document.getElementById("btn");
var reg=/^\d{6}$/g;
btn.onclick=function(){
var value=txt.value;
var result=reg.test(value);
console.log(result);
if(result){
alert("输入是正确");
}else{
alert("请输入6位数字")
}
}
eg2:
var a ="hello32";
var reg=/\d{3,6}/;
console.log(reg.test(a));//返回false
eg3:
/* 量词
+ 表示出现一次或多次
? 表示出现0次或一次
* 表示出现0次或多次
*/
var a ="hello 2323";
var reg =/\d+/;
console.log(reg.test(a))
6.排除
// 排除
// [^abc] 除了abc
var str="abc123";
var reg=/[^abc]/g;
console.log(str.replace(reg,"*"));
7.match方法
var str="hello 12313 123"
var reg=/\d+/g;
var arr=str.match(reg);// \d 代表0~9
console.log(arr); //返回数组
8.过滤,替换
<textarea id="txt" cols="30" rows="10"></textarea>
<button id="btn">过滤</button>
var txt=document.getElementById("txt");
var btn=document.getElementById("btn");
var reg=/天猫|淘宝/g;
btn.onclick=function(){
var value =txt.value;
var filter=value.replace(reg,"**");
txt.value=filter;
}
9.支持正则表达式的函数
/*支持正则表达式的方法:
search();
split();
match();
replace();
*/
var a ="hello world";
var reg=/l/g;
console.log(a.split(reg));
10.标签过滤
/* 标签的规则
开始为<
结束为>
中间的内容是除了<>之外的任意符号 可以有也可以没有
*/
var reg=/<[^<>]*>/g;
var txt=document.getElementById("txt");
var btn=document.getElementById("btn");
btn.onclick=function(){
var value=txt.value;
var filter=value.replace(reg,"")
txt.valut=filter;
网友评论