Fork me on GitHub

JavaScript内置对象篇

Array数组

Array构造函数

语法:var Name = new Array()

小括号()说明:

1.**预先知道数组要保存的项目数量**

2.**向Array构造函数中的传递数组应包含的项**
1
2
3
4
5
// 第一种方式: 创建 一个保存颜色的数组,括号中如果不确定多少个值,就可以不写。
var colors = new Array();
// 第一种方式: 直接在括号中写已知的值如:( 1,3,5,6,7)
var colors = new Array(1, 3, 4, 5, 6,);
console.log(colors);

字面量创建

由一对包含数组项目的方括号【】表示,多个数组项之间,用 逗号隔开。

1
2
// 第二种方式:字面量表示法
var Name = ['red','pink','yellow','green'];

数组元素的读写

读取和设置时,使用方括号【】并提供相应的索引

说明:索引是从 0开始的正整数

当索引找不到,则返回 undefined

1
2
3
4
5
6
7
// 第二种方式:字面量表示法
var Name = ['red','pink','yellow','green'];

// 读取数组中的值
congsole.log( Name[0] ); // red
congsole.log( Name[1] ); // pink
congsole.log( Name[2] ); // yellow

数组长度

语法:array:length

功能:获取数组array的长度

返回值:number

说明:

1.通过设置length 可以从数组的末尾移除项或向数组中添加新项

2.把一个值放在超出当前数组大小的位置上时,会重新计算数组长度值

**长度等于最后一项索引加1.**
1
2
3
4
5
6
var arr ['a','b','c'];
// 移除末尾值
arr = arr.length -1;
// 重新计算数组
arr[99] = 'z';
console.log(arr.length); // length = 100 = z

数组遍历

1
2
3
4
5
6
for(var i = 0 ; i < arr.length; i++){
consloe.log(i); // 索引
consloe.log(i); // 数组值
}

// 想获取数组中的每个值,就需要循环,循环条件就是 索引小于数组的个数

综合案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 /*     任务
第一步:先创建一个空数组,用来保存接收到的用户输入的数据
第二步:使用循环让页面不停地弹出“请输入员工工资”这个窗口,直到用户输入“退出”
第三步:在页面上输出这个数组,数组中不要包含“退出”
*/

// 1.空数组用来接收,用户输入的值
var num = [];
// 2.用变量 i 模拟数组中的下标
var i = 0;
// 3. 用户输入框
var inPt = prompt('请输入价格');
// 4. 当用户,不输入“结束”关键字时,则无限循环输入提示框
while (inPt != '退出') {
// 用户输入框
inPt = prompt('请输入价格');
// 用户每次输入的,给他添加到数组中去
// i 代表数组的下标,通过另外一行去自增, 自增后是空的下标,然后把值 赋值给新下标
num[i] = inPt;
// 上面的代码执行完毕 i 就会自增12345....i,每次自增后会在数组中生成一个空的下标节点
i++;
};
// 5. 数组的长度,最后一位是“退出”,应当去掉,然后重新赋值。
num.length = i - 1;
document.write(num);

数组的栈方法

push()

语法:arrayObject. push( newele1,newele2……neweX)

功能:

把它的参数顺序**添加到** arrayObject 的**尾部**

返回值:

把指定的值添加到数组后的新长度
1
2
3
4
5
6
7
var sum = [];
sum.push('red'); // 追加到数组末尾
console.log(sum); // ["red"]
sum.push('pink'); // 追加到数组末尾
console.log(sum); // ["red", "pink"]
sum.push('bule'); // 追加到数组末尾
console.log(sum); // ["red", "pink", "bule"]

unshift()

语法:arrayObject. unshift( newele1,newele2……neweX)

功能:

把它的参数顺序**添加到** arrayObject 的**开头**

返回值:

把指定的值添加到数组后的新长度
1
2
3
4
var nums = [1, 3, 4, 5, 6];
nums.unshift('前面', '99', '88');
console.log(nums);
// 返回值 ["前面", "99", "88", 1, 3, 4, 5, 6]

pop()

语法: arrayObject. pop()

功能: 删除 arrayObject 中的最后一个元素

返回值: 被删除的那个元素

1
2
3
var nums1 = [1, 3, 4, 5, 6];
var pp = nums1.pop();
console.log(pp); // 6

shift()

语法: arrayObject. shift()

功能: 删除 arrayObject 中的第一个元素

返回值: 被删除的那个元素

1
2
3
4
var nums1 = [1, 3, 4, 5, 6];
// 接收的返回值
var sd = nums1.shift();
console.log(sd); // 1 被删掉的那个元素

数组的转换方法

join()

语法:arrayObject. join(“分隔符”) 

功能:用于**把数组**中的所有元素**转换成字符串**

返回值:字符串
1
2
3
4
5
6
var nums = [2,3,4,5];
var str = nums.join(); // 没写分隔符,默认是 逗号隔开
console.log(str); // 2,4,5

var wordstr = nums.join('-');
console.log(wordstr); // 2-4-5

数组的重排序方法

reverse()

语法:arrayObject. reverse()

功能:用于颠倒数组中元素的顺序

返回值:数组
1
2
3
var nums = [2,3,4,5];
nums. reverse();
console.log(nums); // 5,4,3,2,

sort()

语法:arrayObject. sort(sortby)

功能:对数组的元素进行排序

返回值:数组

说明:

1.即使数组中国的每一项都是数组,sort()方法比较的也是字符串

2.sort()方法可以接收一个比较函数作为参数
1
2
3
4
5
6
7
8
9
10
11
12
13
var sum = [12,32,2,3,1,0,88,12,11];
sum.sort(function (a,b) {
// 降序排列
return b - a;
});
console.log(sum); // [88, 32, 12, 12, 11, 3, 2, 1, 0]

var sum = [12,32,2,3,1,0,88,12,11];
sum.sort(function (a,b) {
// 升序排列
return a - b;
});
console.log(sum); // [0, 1, 2, 3, 11, 12, 12, 32, 88]

案例练习

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 // 存储
var sum = [];
// 模拟 遍历数组中的 i
var i= 0;
// 用户输入
var Name = prompt('输入数字,我会进行排序');
while ( Name != '-1'){
Name = prompt('输入数字,我会进行排序');
sum[i] = Name;
// 每次输入后,让 i 自增,让数组长度增加1后
// 让 Name 当前输入的值 赋值给 这个空 索引。
i++;
}
// 去掉结束符
sum.length = i - 1;

// 对数组排序
sum.sort(function (a,b) {
return b - a;
});

// 页面输出数组
document.write(sum);

数组操作方法

concat()

语法:arrayObject. concat(arrayX,arrayX,…….arrayX)

功能:连接俩个或者多个数组可以复制数组

返回值:数组

1
2
3
4
5
var arr = [1,2,3,4,5,6];
var arr1 = [7,8,9,10,11];
var arr2 = arr.concat(arr1);
console.log(arr2);
//返回值 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

slice()

语法:arrayObject. slice( start, end )

功能:从已有的数组中返回选定的元素,( 可以复制数组

参数:

start(必须):规定从何处**开始选取**,如果是负数,从数组尾部开始算起

end(可选):规定从何处**结束选取**,是数组片断结束处的数组下标, **end 本身不在截取范围之内,省略时,截取至字符串的末尾**。

说明:

如果没指定end, 选取会从 start 到数组结束的所有元素

如果 **slice() 方法**的参数中**有一个负数**,则用**数组长度加上是那个负数确定相应的位置**

返回值:数组

1
2
3
4
var arr = [1, 2, 3, 4, 5, 6];
// start, end 都是数组的下标,下标是要减1,👇 如果我要截取,3~5 这几个值。
var sss = arr.slice(2, 5); // 下标为:2,5
console.log(sss); // [3, 4, 5]

splice() 增删替换

插入某个或多个元素

​ 语法:arrayobject.splice( index,0, item1,item2……itmeX)

​ 功能: 在指定位置插入值

​ 参数:

​ index:起始位置

​ 0 : 要删掉的元素个数 (删掉元素从插入位置开始,包括了插入的那个位置

​ item1,….itmeX:要插入的项

​ 返回值:空数组

​ 说明:

1
2
3
4
5
6
// 插入元素
var arr = [1, 2, 3, 4, 5, 6];
// 2 = 从哪里插入。0 是要删掉的项。
var insertArr = arr.splice(2,0 ,"m",'h','f'); // 👈
console.log(insertArr);
// 返回数组: [1, 2, "m", "h", "f", 3, 4, 5, 6]

删除某个或多个元素

​ 语法:arrayobject.splice( index,count )

​ 功能:删掉从 index 处开始的零个或多个元素

​ 返回值:含有被删掉的元素的数组

​ 说明:count是要删除的项目数量,如果设置为0,则不会删除项目。

​ (删掉元素从插入位置开始,包括了插入的那个位置)

​ 如果不设置,则删除从index开始的所有值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 删掉数组中的从索引2开始的,2个值。
var arr = [1, 2, 3, 4, 5, 6];
var delArr = arr.splice(2,2); // 👈
console.log(delArr); // [3, 4]
console.log(arr); // [1, 2, 5, 6]

// 删掉数组中的从索引2开始的所有值
var arr = [1, 2, 3, 4, 5, 6];
var delArr = arr.splice(2); // 👈
console.log(delArr); //[3, 4, 5, 6]
console.log(arr); // [1, 2]

// 不删掉任何元素
var arr = [1, 2, 3, 4, 5, 6];
var delArr = arr.splice(2,0); // 👈
console.log(delArr); // []
console.log(arr); //[1, 2, 3, 4, 5, 6]

替换某个或多个元素

​ 语法:arrayobject.splice( index,count, item1,item2……itmeX)

​ 功能: 在指定位置插入值

​ 参数:

​ index:起始位置

​ count: 要删掉的元素个数 ( 删掉要替换的值 ) (删掉元素从插入位置开始,包括了插入的那个位置

​ item1,….itmeX:要插入的项 (添加要替换的新值)

​ 返回值:从原始数组中删掉的项(如果没有删掉,则返回空数组)

​ 说明:

1
2
3
4
5
6
7
8
// 插入元素
var arr = [1, 2, 3, 4, 5, 6];
// 2 = 从哪里插入。0 是要删掉的项。
var replaceArr = arr.splice(2,3,"m",'h','f'); // 👈
console.log(arr);
// 返回数组:[1, 2, "ff", "dd", "gg", 6]
console.log(replaceArr);
// [3, 4] 返回值是被删掉的值

面试题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 实现b数组对a数组的拷贝,方法越多越好
var a = [1,'yes',3],
b;

// 方法1. 数组遍历
b = new Array();
for(var i = 0; i < a.length; i++){

b.push(a[i])
}
// 方法2. concat()
b= [].concat();

// 方法2. slice()
b = [];
b = a.slice(0)

案例练习

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var jj = [];
var i = 0;
var name = prompt('qingshurur');
// 循环
while (name != '-1') {
name = prompt('qingshurur');
jj[i] = name;
i++;
}
jj.length = i - 1;
// 替换数组中的第一个
var x = jj.splice(0,1,'hello');
// 输出,并且给数组添加了用分隔符
document.write(jj.join("__"));

字符串对象

字符串位置 charAt()

语法:stringObject.charAt( index )

功能:返回stringObject中index位置的字符

说明:SCMAScriopt5中可以使用’方括号加字符索引’来访问字符串中特定的字符,

但是ie7及更早的浏览器会返回undefined

1
2
3
var str = 'hello word';
console.log(str.charAt(4));
// 返回值: o

字符串编码 charCodeAt()

语法:stringObject.charCodeAt(index)

功能:返回stringObject中index位置的字符的字符编码

1
2
3
var str = 'hello word';
console.log(str.charCodeAt(4));
// 返回值:111 (o 的字符编码是 111 )

检索字符串 indexOf()

语法:string object.indexOf(“O”);

功能:返回某个指定的字符串值在字符串中首次出现的位置;

返回值: 数值

说明:

如果没有找到该字符串,则返回 - 1.

默认搜索顺序是从左搜索的

1
2
3
4
// 从某字符串中检测 是否有 某个字符串存在
var str = '215851038@qq.com';
console.log(str.indexOf('qq'));
// 返回值是,从左搜索,检测到q索引位置 = 10

检索字符串 lastIndexOf()

语法:string object.lastIndex(“O”);

功能:返回某个指定的字符串值在字符串中最后出现的位置,在一个字符串中的指定位置从后向前搜索。

返回值: 数值

说明:

如果没有找到该字符串,则返回 - 1.

默认搜索顺序是从右搜索的

1
2
3
4
// 从某字符串中检测 是否有 某个字符串存在
var str = '215851038@qq.com';
console.log(str.lastIndexOf('q'));
// 返回值是,从右搜索,检测到q索引位置 = 11

截取字符串 substring()

说明: 语法及功能同slice ()完全一样

区别在于:

1.当参数为负数时,自动将参数转换为0

1
2
3
4
5
var str = '慕课网,工程师的黄埔军校';
var strNew = str.substring(-6,7);
console.log(strNew);
// substring()函数可以提取到字符串的某个部分,它有两个参数,当这两个参数的值为负数的时候,将自动转换为0。
// 一个参数的值为负数-6,-6会被转换为0,所以这个方法实际为substring(0,7)

截取字符串 substr(start.len)

stringObject.substr(start.len)

功能:

截取子字符串

参数说明:

1.start:必需,指定子字符串的开始位置。

2.len:可选,表示截取的字符总数,省略时截取至字符串的末尾。

3.当start为负数时,会将传入的负值与 字符串的长度相加。

4.当len为负数时,返回空字符串。

1
2
3
4
var str = 'hello world';
console.log(str.substr(6,3)); // wor
console.log(str.substr(-5,4)); // worl 截取(6,4)
console.log(str.substr(5,-4)); // len如果为负数,则返回空字符串

案例实践

1
2
3
4
5
6
7
8
9
10
// 第一步:用第一种方式截取子字符串“world”
// Tips:这个方法的特点是:两个参数代表了开始位置和结束为止,当有负数出现时,负数的参数和字符串的长度相加
var str = 'Program ape world you do not understand';
console.log(str.slice(-27,-22));
// 第二步:用第二种方式截取子字符串“world”
// Tips:这个方法的特点是:两个参数代表了开始位置和结束为止,当参数为负数时,自动转化为0
console.log(str.substring(12,17));
// 第三步:用第三种方式截取子字符串“world”
// Tips:这个方法的特点是:两个参数分别代表了开始位置和截取的字符串的长度
console.log(str.substr(12,5));
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var str = "JavaScript 是属于网络的脚本语言!JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。JavaScript是因特网上最流行的脚本语言。 JavaScript很容易使用! 你一定会喜欢它的! ",
num = 0;
// 循环遍历,拿到每个字符
for (var i = 0; i < str.length; i++) {
// 如果检测 i 位置, 是否是 J ,如果是则进入下个判断
if (str.charAt(i) == "J") {
// 截取i ,后面10个字符,再判断,是否等于 JavaScript
if (str.substr(i,10) == 'JavaScript') {
num++;
document.write("JavaScript第" + num + "次出现的位置是" + i + "的位置" + "<br />");
}
}
}
document.write("JavaScript在这段话中一共出现了" + num + "次");

综合应用实例

掌握字符串方法的综合应用:

编写js函数,用于获得输入参数的后缀名,如果输入adb.txt,返回.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 定义函数,封装操作方法,方便重复调用
function getFileFormat(url){
// 获取.在url中出现的位置,“文件格式都是末尾的.开始的位置”。
var pos = url.lastIndexof(".");
// 截取从.点开始到最后的字符串,然后返回这个字符串
return url.substr(pos);
}
// 传入参数,并且接收返回值
var formatName = getFileFormat("www.goole.com");
// 输出返回值: .com
console.log( formatName );
// 传入参数,并且接收返回值

var imoocName = getFileFormat("www.imooc.jpg");
// 输出返回值: .jpg
console.log( imoocName );
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// 用户输入框
var input = prompt('请输入登录邮箱');

// 函数
function email(str){
// 声明一个数组
var arr = [];
// 获取@ 的位置
var num = str.indexOf('@');
// 使用数组存储 登录名 和 域名
arr[0] = str.slice(0,num);
arr[1] = str.slice(num + 1);
return arr;
}

// 使用变量接受调用函数返回的结果
var result = email(input);
console.log( result);

// 在页面输出内容
document.write("邮箱登录名是:" + result[0] + '<br/>');
document.write("登陆邮箱域名名是:" + result[1] + "邮箱" +'<br/>');

字符串对象的方法(分隔/替换/转换)

split(分割成字符串数组)

语法:stringobject.split( separator )

功能:把一个字符分割成字符串数组

返回值:Array

说明:separator:必需,分隔符。

1
2
3
4
5
6
7
8
var str = 'welcome-to-beijing';
// 使用split() 将str转换为数组
var arr = str.split('-');
// 返回值:["welcome", "to", "beijing"]

var date ='2019/05/29';
var dateArr = date.split('/');
// 返回值:["2019", "05", "29"]

replace( 替换)

语法:stringobject.replace( regexp / substr, replacement )

功能:在字符串中使用一些字符替换另外一些字符,或者替换一个正则表达式匹配的子串

返回值:string

参数:

regexp: 必需,规定子字符串或要替换的模式的 RegExp 对象

replacement: 必需,一个子字符串值

1
2
3
4
5
var tel = '010-65217921,400-100-0909,101-213891333,';
// 把逗号替换成 空格, newTel 中存储的是被替换的字符串。
var newTel = tel.replace(',' , ' ');
console.log(newTel) // 只能替换一个
console.log(tel)

toUpperCase( 转换成大写 )

语法:stringObject.toUpperCase( )

功能:把字符串转为大写

说明:不会修改原字符串。

1
2
3
4
5
6
7
8
9
// 全部转换成大写了
var str = 'hello word';
console.log(str.toUpperCase());

// 单独字符串,转换大写,原字符串不改变,需要改变就要另外做替换操作
var str = 'hello word';
var toupp = str.charAt(6).toUpperCase(); // 👈
console.log(toupp); // W
console.log(str); // hello word

toLowerCase( 转换小写 )

语法:stringObject.toLowerCase( )

功能:把字符串转为小写

1
2
3
// 全部转换成小写了
var str = 'HELLO WORD';
console.log(str.toLowerCase());

字符串综合案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
   		// 封装字符串转数组  再拼接 - 方法
function camelback(str) {
// 通过- 这个分隔符将str拆分成数组
var arr = str.split('-'), // 被封分割的字符串 ["border", "left", "color"]
newStr = arr[0]; // 👈 newStr = border

// 循环应该从 1,开始,因为 - 前面的字符,是不需要去修改改写字母的
for (var i = 1, len = arr.length; i < len; i++) {
// 当 i = 1, 则 word = left
// 当 i = 2, 则 word = color....
var word = arr[i];

// 1.将每一个单词的首字母,转换为大写
// 2.连接剩余的字符(这里剩余的字符,需要截取)
// 3.每处理完一个,newStr = border + left 👈
// 每处理完二个,newStr = borderLeft + Color👈
// 👇每处理完三个,newStr = borderLeftColor + .....
newStr += word.charAt(0).toUpperCase() + word.substr(1);
}
// 当循环处理完,返回字符串
return newStr;
}

// 输出页面
var camelFormat = camelback("border-left-color");
console.log(camelFormat);
1
2
3
4
5
6
7
8
9
10
11
/*
第一步:先获取到“tomorrow“在字符串中的位置
第二步:将“tomorrow“从字符串中截取出来,三种截取方式都可用
第三步:获取到了“tomorrow“,将它转化为大写并输出在页面中
*/
var str = "Never deter till tomorrow that which you can do today";
var index = str.indexOf('tomorrow'); // 检索字符位置
var strNew = str.substr(index, 8); // 截取字符串
var newStr = strNew.toUpperCase(); // 转换字符串大小写
var tihuan = str.replace(strNew,newStr); // 替换原字符串的字符
document.write(tihuan); // 页面输出

Math对象方法

求最小值 min()

语法:Math.min(num1,num2,num3….)

功能:求一组数中最小值

返回值:number

1
2
var min = Math.min(5,-4,108,9,11,-55);
console.log(min); // -55

求最大值 max()

语法:Math.max(num1,num2,num3….)

功能:求一组数中最大值

返回值:number

1
2
var max = Math.max(5,-4,108,9,11,-55);
console.log(max); // 108

向上取整 ceil()

语法:Math.round(num)

功能:向上取整,返回大于num的最小整数

返回值:number

1
2
var num = Math.ceil(189.99);
console.log(num); // 190

向下取整 floor( )

语法:Math.floor()

功能: 向下取整,返回大于num的整数部分

返回值:number

1
2
var num = Math.floor(189.99);
console.log(num); // 189

四舍五入 round()

语法:Math.round()

功能:四舍五入

返回值:number

1
2
3
4
5
var num = Math.round(189.40);
console.log(num); // 189

var num = Math.round(189.50);
console.log(num); // 190

绝对值 abs()

语法:Math.abs(num)

功能:返回num的 绝对值

返回值:number

1
2
var mums = -55;
console.log(Math.abs(mums));

随机整数的函数 random()

语法:Math.random( 随机整数的函数 )

功能:返回大于等于 0,小于1的一个随机数。

返回值:number

说明:求N到M之间的随机整数的公式: 👇

random = Math.floor( Math.random() * ( m - n + 1) +n)

1
2
3
4
5
6
7
function getRandom(n, m) {
var choise = m - n + 1; //随机整数的个数
return Math.floor(Math.random() * choise);
}

var random1 = getRandom(1, 100000); //1~100000 随机数
console.log(random1);

随机整数案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
     var num = []; // 存放随机数
for (var i = 0; i < 10; i++) {

function getRandom(n, m) {
var choise = m - n + 1; //随机整数的个数
return Math.floor(Math.random() * choise);
}
// 每次循环,随机值返回并且赋值给新索引接收
num[i] = getRandom(0, 100);
}
// 数组排序
num.sort(function (a, b) {
return b - a;
});
document.write(num + '<br/>');

// 最小值
var Min = num[num.length -1 ];
// 最大值
var Max = num[0];
document.write("这组数最大值是:" + Max + "最小值是:" + Min);

Date时间对象方法

语法:new Date();

功能:创建一个日期时间对象

返回值:不传参的情况下,返回当前的日期时间对象

1
2
3
var today = new Date();
// Thu May 30 2019 00:03:44 GMT+0800 (中国标准时间)
console.log(today);

获取年月日时分秒及星期的方法

返回4位数的年份 getFullYear()
返回日期中的月份 getMonth() 返回值为 0 - 11,0⃣️ = 12月
返回月份中的天数 getDate()
返回星期,返回值为 0 - 6 getDay()
返回小时 getHours()
返回时分 getMinutes()
返回秒 getSeconds()
返回表示日期的毫秒 getTime()(返回从1970年1月1日00:00:00开始到现在的毫秒数)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    var weeks = ['日', '一', '二', '三', '四', '五', '六'],
today = new Date(),
year = today.getFullYear(),
month = today.getMonth(),
date = today.getDate(),
week = today.getDay(),
hours = today.getHours(),
minutes = today.getMinutes(),
seconds = today.getSeconds(),

time = year + '年' + (month +1) + '月' + date + '日' + hours + ' 时' + minutes + '分' + seconds + '秒' + '今天是星期:' + weeks[week];
console.log(time);

// 综合在一起了,方便理解

设置年月日时分秒及星期的方法

设置4位数的年份 setFullYear()
设置日期中的月份 setMonth() ,返回值为 0 - 11,0⃣️ = 12月
设置月份中的天数 setDate()
设置星期,返回值为 0 - 6 setDay()
设置小时 setHours()
设置时分 setMinutes()
设置秒 setSeconds()

#####返回表示日期的毫秒 setTime() (返回从1970年1月1日00:00:00开始到现在的毫秒数)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 50天后是星期几????

// 第一种方法
// 当前天数 + 50 , 再输出当天是星期几
var today = new Date();
var xingqi = today.setDate(today.getDay() + 50 )
console.log(today.getDay()); // 0 = 星期日

// 第二种方法
var weeks = ['日', '一', '二', '三', '四', '五', '六'];
var today = new Date();
var year = today.getFullYear(); // 年
var month = today.getMonth(); // 月 + 1
var day = today.getDate(); // 日 + 1
var temp = new Date(year, month, day + 80); //重新创建一个目标日期对象
console.log('50天后的今天是:' + temp.getFullYear() + '年' + (temp.getMonth() + 1) + '月' + temp.getDate() + '日' + '星期' + weeks[temp.getDay()]);