一、date
1、创建日期对象
1.Date() 无参;
var now=new Date();
console.log(now);
2.Date(字符串);
//输出字符串
var date1=new Date("2020-11-4 0:33:55");//日期和时间中间用空格隔开
console.log(date1);//输出字符串
3.Date(年,月,日)
//Date(年,月,日)
var date2=new Date(2020,11,4);
console.log(date2);
2、使用对象
- toString() 默认方法,可省略;
- valueOf() 输出原始值;
var now=new Date(); console.log(now);//输出date无参 console.log(now.valueOf());//valueOf() 输出原始值;
- getYear() 获取自1900年至今得年数;
- getFullYear() 获取四位数得年份;
- getMonth() 获取从0至今得月份;
- getDay() 获取星期几;
- getTime() 获取时间;
- getMinutes() 获取当前时间得分;
- getSeconds() 获取当前时间得秒;
- getHours() 获取当时时间得小时,从0开始;
- get(Local)DateString() 获取(本地)日期;Local(本地)
- get(Local)TimoString() 获取(本地)时间;
案例:
//计算时间差,返回相差的天/时/分/秒
var d1=new Date("2020-11-03 00:00:30");
var d2=new Date(2019,11,4,15,39,56);
var rq=riqiha(d1,d2);
console.log(rq.day);
function riqiha(start,end){
var mili=start-end;
var day=Math.floor(mili/(1000*60*60*24));
var hour=((mili/(1000*60*60))%24);
var minute=((mili/(1000*60))%60);
var second=((mili/1000)%60);
// return day+"天"+hour+"小时"+minute+"分"+second+"秒";
return{
day:day,
hour:hour,
minute:minute,
second:second
}
}
输出:
二、Array
1、创建数组
字面量数组:var arr=[[],[]];
通过构造创建数组:var arr=new Array();
var arr=new Array(初始化元素);
2、数组对象得使用
直接输出数组对象,输出得是原始值;
- valueOf() 输出得是原始值;
- toString() 输入字符串;
- push() 在数组的尾部参数可以是单个元素,也可以是数组
var arr1=new Array();//初始化元素 arr1 [0]=10; arr1 [4]=20; var arr2=new Array(10,45,3); console.log(arr1.toString());//打印字符串 console.log(arr1.valueOf());//打印原始值 // arr1.push(30,80);//在数组开始插入元素 console.log(arr1.toString()); arr1.push(30,80,[20,20,20,50]); console.log(arr1.toString());
- pop() 从数组尾部删除指定的元素;
- unshift() 在数组开始插入元素;
arr1.unshift(5,[50,800]); console.log(arr1.toString());
- Shift() 从数组开始删除元素,只能一个一个删除;
arr1.shift(5);//从数组开始删除元素,仅可以一个一个删除; console.log(arr1.toString());
- reverse() 反转数组,修改数组本身;
arr1.reverse(); console.log(arr1.toString());
- sort() 默认按unicode编码排序;
arr1.sort(); console.log(arr1.toString());
- concat() 把数组元素拼接上,返回一个新数组;
//Array //字面量建立数组 var arr=[]; arr [0]=12; arr [1]="str"; arr [5]=30;//自动增长,length为6 //通过构造函数创建数组 var arr1=new Array();//初始化元素 arr1 [0]=10; arr1 [4]=20; var arr2=new Array(10,45,3); console.log(arr1.toString());//打印字符串 console.log(arr1.valueOf());//打印原始值 arr1.push(30,80);//在数组开始插入元素 console.log(arr1.toString()); arr1.push(30,80,[20,20,20,50]); console.log(arr1.toString()); arr1.unshift(5,[50,800]);//从数组开始插入元素 console.log(arr1.toString()); arr1.shift(5);//从数组开始删除元素,仅可以一个一个删除; console.log(arr1.toString()); arr1.reverse(); console.log(arr1.toString()); arr1.sort(); console.log(arr1.toString()); //concat console.log(arr1.concat(arr2));
- slice() 截取数组指定得元素,返回一个数组,不包括最后得索引元素;
console.log(arr3.slice(3,5));
- splice() 从指定位置开始截取指定长度得元素,返回一个新数组;
console.log(arr3.splice(2,4));
- indexOf() 从开始查找指定元素得索引;
//indexOf() console.log(arr3); console.log(arr3.indexOf(20));
- lastlndexOf() 从末尾查找指定元素得索引;
console.log(arr3); console.log(arr3.indexOf(20)); console.log(arr3.lastIndexOf(3));
根据应用场景,在运行时,indexOf()从前向后,lastlndexOf()从后向前。j
- every() 参数是一个函数,函数自动接收三个参数:item,index,array,会对数组中大的每一个元素进行函数操作,只要数组中得任何一个元素没有参与操作,就返回false,多用于检查数组元素。
- forEach() 对数组中得每个元素进行一个函数操作,没返回值。
三、字符串String 是不可变得
一、创建对象
- 字面量 方式: var str1="起来饥寒交迫的奴隶";
- 构造函数创建对象 var str2=new String("起来全世界受苦的人");
二、字符串的使用
- charAt() 获取指定位置的字符;
var str1="起来饥寒交迫的奴隶"; str2="起来全世界受苦的人"; console.log(str1.charAt(1));
- charCodeAt() 获取指定位置的字符unicode码;
var str1="起来饥寒交迫的奴隶"; str2="起来全世界受苦的人"; console.log(str1.charAt(1)); console.log(str1.charCodeAt(1));
- 字符串对象[索引],也可以通过索引获取某个位置得字符。
- concat() 拼接字符串;
var str1="起来饥寒交迫的奴隶"; str2="起来全世界受苦的人"; console.log(str1.charAt(1)); console.log(str1.charCodeAt(1)); console.log(str1[3]); console.log(str1.concat(" ","满腔的热血已经沸腾"));//concat拼接字符串
- Slice() 从指定的起始位置和结束位置,截取字符串,不包括结束。当结束索引是负数时,真实结束位置等于字符的个数加上指定的结束位置。
//截取来饥, console.log(str1.slice(1,3));
- substring() 从指定的起始和结束位置,截取字符串,不包括结束。注意:1、两个参数以最小参数为起始位置,最大参数为结束位置。2、参数小于等于0时,按0取值。
console.log("substring:"+str1.substring(1,3));
- substr() 从指定的起始位置,按推定长度截取字符串。
console.log(str1.substr(0,4));//指定的起始位置,按推定长度截取字符串。
- indexOF() 获取指定字符(串)的索引值,indexOf每次会从上次执行的位置开始。
console.log(str1.indexOf("迫"));
- lastlndexOf() 从字符串的尾部开始获取指定字符(串)的索引值。
console.log(str1.lastIndexOf("寒"));
- trim() 删除字符串前后空格。
var str1="起来饥寒交迫的奴隶"; str2=" 起来全世界受苦的人 ";//前后空格 console.log(str1.charAt(1)); console.log(str1.charCodeAt(1)); console.log(str1[3]); console.log(str1.concat(" ","满腔的热血已经沸腾"));//concat拼接字符串 //截取来饥, console.log(str1.slice(1,3)); console.log("substring:"+str1.substring(1,3)); console.log(str1.substr(0,4));//指定的起始位置,按推定长度截取字符串。 console.log(str1.indexOf("迫")); console.log(str1.lastIndexOf("寒")); //删除字符串前后空格 console.log(str2); // console.log(str2.trim());
console.log(str2.trim());
- to(Locale)UpperCase 将字符转换成大写。
var str2="hello world!"; console.log(str2.toLocaleUpperCase());//将字符串转换成大写
- to(Locale)LowerCase 将字符转换成小写。
var str3="HELLO WORLD!" console.log(str3.toLocaleLowerCase());//将字符串转换成小写
- search() 查找指定字符串的起始索引,或者按正则表达式查找。
console.log(str1.search("迫"));
- repalace(被替换的内容,替换内容)。
console.log(str1.replace("的","得"));
- split("分割符") 按指定的分割符把字符串拆分成数组并返回。注意:如果要把普通字符串分割成数组,分隔符不用加空格双引号。
str2=" 起来全世来界受苦来的人 "; console.log(str2.split("来"));
console.log(str2.split(""));
- formCharCode(unicode编码列表)这个方法属于String对象,把指定的一组编码转成字符串
var str3=String.fromCharCode(65,66,67); console.log(str3);
补充:window.isNaN{}判断一个变量是不是一个非数值的类型,如果是非数值类型,返回true