关于js的零碎东西(2)
2018-10-07 本文已影响0人
战神七小姐
8.字符串类型
长度:.length
var a="dcs gb";
console.log(a.length);//6;
转化:
转为大写: .toUpperCase();
var a="sxdc";
console.log(a.toUpperCase());//SXDC
转为小写: .toLowerCase();
var a="SDFG";
console.log(a.toLowerCase());//sdfg
清除前后空格: .trim
var a=" sdf ";
console.log(a.trim());//sdf
找字符串位置:.indexOf();//从左往右找,找不到返回-1
var a="xsdcsgb";
console.log(a.indexOf("d"));//2
.lastIndexOf();//从右往左找,找不到返回-1
var a="xsddcsgb";
console.log(a.lastIndexOf("d"));//3
截取子字符串:
1. .slice(开始下标,结束下标)
包含开始下标,不包含结束下标
var a="sfvgdbfhnj";
console.log(a.slice(3,5));//gd
.slice(开始下标)
从开始到最后
开始下标和结束下标都是负数时:字符串长度+负数=开始,结束下标
var a="sfvgdbfhnj";
console.log(a.slice(3));//gdbfhnj
2. .substr(开始下标,长度)
开始下标起,截取长度
var a="dcfsgthgbdfh";
console.log(a.substr(3,4));//sgth
.substr(开始下标)
从开始截取到最后
var a="dcfsgthgbdfh";
console.log(a.substr(3));//sgthgbdfh
3. .substring(开始下标,结束下标)
包含开始下标,不包含结束下标
开始,结束下标都不能是负值
若为负值,转化为0
var a="dcfsgthgbdfh";
console.log(a.substring(3,4));//s 从第4个截到第5个
console.log(a.substring(-3,-4));//
.substring(开始下标)
从开始截取到最后
var a="dcfsgthgbdfh";
console.log(a.substring(3));//sgthgbdfh
var a="dcfsgthgbdfh";
console.log(a.substring(-3));//dcfsgthgbdfh
访问字符中特定字符:
1. .charAt(下标);
返回特定位置的字符
var a="xdcsgvd";
console.log(a.charAt("d"));//x
console.log(a.charAt("g"));//x
console.log(a.charAt("z"));//x
console.log(a.charAt(1));//d
console.log(a.charAt(8));//
2. .charCodeAt(下标);返回特定位置的ASCII码值
var a="sxdcsfv";
console.log(a.charCodeAt(5));//102 f的ASCII码值为102; a=97 b=98...
连接多个字符串: .concat(字符串1,字符串2...);
var a="scdv",b="dfvb";
console.log(a.concat(a,b));//scdvdfvb
字符串转化为数组:.split('分隔符')
var a="abcd";
console.log(a.split(""));//["a", "b", "c", "d"]
数组转化为字符串:.join('分隔符')
var a=["abcd","ddf"];
console.log(a.join('&'));//abcd&ddf
9.数学对象
属性 console.log(Math.PI)//3.141592653589793
最大值:Math.max(值1,值2...);
var a=233,b=234,c=2345,d=87766;
console.log(Math.max(a,b,c,d));//87766
最小值:Math.min(值1,值2...);
var a=233,b=234,c=2345,d=87766;
console.log(Math.min(a,b,c,d));//233
四舍五入:Math.round(数值);
var a="213.45";
console.log(Math.round(a));//213
var a="213.55";
console.log(Math.round(a));//214
向上取整:Math.ceil(数值);
var a="2.356";
console.log(Math.ceil(a));//3
var a="2.956";
console.log(Math.ceil(a));//3
向下取整:Math.floor(数值);
var a="234.23";
console.log(Math.floor(a));//234
var a="234.93";
console.log(Math.floor(a));//234
求绝对值:Math.abs();
var a="-234";
console.log(Math.abs(a));//234
求平方根:Math.sqrt();
var a="25";
求幂:Math.pow(底数,指数)
var a="2",b="3";
console.log(Math.pow(a,b));//8
求任意两数之间的随机数:
1.Math.floor(Math.random()*(大值-小值+1))+小值
2.Math.floor(Math.random()*(大值-小值+1)+小值)
3.Math.random();获取[0,1)的随机数
4.Math.floor(Math.random()*a.length)
创建数组:new Array
var a=new Array()//创建数组,构造函数模式(对象)
console.log(arr);//空数组 undefined
console.log(arr.length)//0
构造函数法:
var a=new Array(4);
console.log(a)//empty*4 一个值为长度,多个值为值
var a=[23,34,45];
a[a.length-1]//数组最后一个组值
一个改,另一个也跟着改
var a=[12,12];
b=a;
b[0]=10;
console.log(a);//10,12
console.log(b);//10,12
用 for in
var a=["document","1802A","hello","lalala"];
for(var i=0;i<a.length;i++){
console.log(i)//表示数组中的每一个下标
console.log(a[i]);//表示数组中每一个下标的值
}
==
for(var i in a ){
console.log(i)//表示数组中的每一个下标
console.log(a[i]);//表示数组中每一个下标的值
}
即:
for (初始值 in 数组或对象){
循环体
}
对象的格式:{}键值对(属性和值) 访问对象里面的属性可以通过:对象.属性名 还有 对象[属性]<--更优化
var a={name:"张三",age:18,sex:man};
for(var arr in a){
console.log(arr);//表示对象里的每一个属性:name age sex
console.log(a[arr])//表示对象里的每一个属性对应的值
}
检测数组:indexOf lastIndexOf
indexOf:在没有传递第二个参数的情况下返回的是最先匹配的元素,如果没有返回-1
var a=["one","two","three","one"];
console.log(a.indexOf("one"))//0
lastIndexOf:在没有传递第二个参数的情况下返回的是从数值末尾最先匹配的元素,如果没有返回-1
var a=["one","two","three","one"];
console.log(a.lastIndexOf("one"));//3