1、日期对象常用方法:
<script>// 创建日期对象方式1var date1 = new Date();console.log('date1=', date1);// 方式2, 参数可以是一个日期的字符串var date2 = new Date('2020-06-24');console.log('date2=', date2);// 方式3, 返回1970到现在的毫秒数var date3 = Date.now();console.log('date3=', date3);// 方式4, 参数可以是一个毫秒数var date4 = new Date(1624497306713);console.log('date4', date4);var date4 = new Date(0);console.log('date4', date4);</script>
借助 BootCDN
<script>// 日期的常用方法// 1.获取年月日时分秒 (月份+1)var date = new Date();var y = date.getFullYear();var m = date.getMonth() + 1;var d = date.getDate();var h = date.getHours();var M = date.getMinutes();var S = date.getSeconds();console.log(y);console.log(m);console.log(d);console.log(h);console.log(M);console.log(S);// 对小于10的数,前面加0m = m < 10 ? '0' + m : m;d = d < 10 ? '0' + d : d;h = h < 10 ? '0' + h : h;// 格式化日期var dateStr = `${y}年${m}月${d}日 ${h}:${M}:${S}`;console.log('现在时间是:', dateStr);// 2.获取星期var week = date.getDay();console.log('week', week);// 3.获取毫秒数, 和Date.now()一样var ss = date.getTime();console.log('ss', ss);// 4.日期比较var date1 = new Date('2021-06-24');var date2 = new Date('2021-06-23');console.log('date2-date1', date2 - date1); // -86400000</script>
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script src="https://momentjs.bootcss.com/downloads/moment.js"></script></head><body><script>var str = moment().format('YYYY-MM-DD hh:mm:ss');console.log(str);</script></body></html>
字符串常用方法:
1、length //获取字符串的长度
2、trim() //去掉字符串前后的空格
3、toLowerCase( ) //转化为小写字母
4、toUpperCase() //转化为大写字母
5、charAt() // 返回某个下标对应的字符
6、indexOf() //返回字符在原字符串中的位置
7、lastIndexOf() //返回字符在原字符串中的位置,但从后面开始检测
8、includes() //检查字符串中是否包含指定字符
9、split() //字符串转数组,接收一个参数,作为转化的标志
10、substring() //截取字符串,接收两个参数,开始的位置和结束的位置
11、slice() //截取字符串,用法类似于subString,开始位置到结束位置。。但是可以复数,,若只有一个参数,则是 从当前位置到结束
12、substr() //截取字符串,接收两个参数,第一个参数是 开始位置,一个是截取的字符个数
13、match() //检查有没有包含某个值,返回符合一个数组,存放符合条件的字符
14、replace() //替换
<script>// 1.length // 字符串的长度var str1 = 'asdfasdfasdf';console.log('str1', str1.length);// 2.trim() // 去掉字符串前后的空格var str2 = ' aaaaaaaaa ';var newStr2 = str2.trim();console.log('str2', str2);console.log('newStr2', newStr2);// 3.toLowerCase() // 转小写字母var str3 = 'asdfASDFasdfs';var newStr3 = str3.toLowerCase();console.log('newStr3', newStr3);// 4.toUpperCase() // 转大写字母// 5.charAt() // 返回某个下表对应的字符var str5 = 'abcde';var chat5 = str5.charAt(1);console.log('chat5', chat5);// 6.indexOf() // 返回字符(字符串)在原字符串中的的位置var str6 = 'abcdef';var index6 = str6.indexOf('b');console.log('index6=', index6);// 7.lastIndexOf() // 同上,但从后面开始检查var str7 = 'abcdebf';var index7 = str7.lastIndexOf('b');console.log('index7=', index7);// 8.includes() // 检查字符串是否包含指定字符var str8 = '我是中国人';var boo8 = str8.includes('我');console.log('boo8', boo8); // true// 9.split() // 字符串转数组,接收一个参数,作为转换的标志var str9 = '刘享高危,林玉生,刘顺顺';var arr9 = str9.split(',');console.log('arr9=', arr9);// 10.substring() // 截取字符串,接收两个参数,开始的位置和结束的位置(不含), 有了slice,就很少substringvar str10 = 'abcdefg';var newStr10 = str10.substring(1, 4);console.log('newStr10=', newStr10) // bcd// 11.slice() 截取字符串(极常用), 用法类似substring, 但可以是负数var str11 = 'abcdefg';var newStr11 = str11.slice(1, 4);console.log('newStr11=', newStr11) // bcdvar newStr11 = str11.slice(1, -1); // 参数可以是负数console.log('newStr11=', newStr11) // bcdefvar newStr11 = str11.slice(-1); // 第二个参数不给,从参数的位置开始,一直截取到最后console.log('newStr11=', newStr11) // gvar phone = 13811112222;var phoneStr = phone + '';var newStr11 = phoneStr.slice(-4); // 从-4的位置开始截取到末尾console.log('newStr11=', newStr11);// 12.substr() 截取字符串, 接收两个参数,第一个参数是开始位置, 第二个参数是截取的字符个数var str12 = 'abcdef';var newStr12 = str12.substr(1, 3);console.log('newStr12', newStr12);// 13.match() // 检查有没有包含某个值, 返回符合一个数组,存放符合条件的字符var str13 = 'abcdeabcdabcd';var arr13 = str13.match('a');console.log('arr13', arr13);// 正则var arr13 = str13.match(/a/g);console.log('arr13', arr13);// 14.replace() // 替换var str14 = '张三,李四,王五,张三,陈六,张三';var newStr14 = str14.replace('张三', '张无忌');console.log('newStr14=', newStr14);// 15.替换全部,使用replaceAll或者正则var newStr14 = str14.replaceAll('张三', '张无忌');console.log('newStr14=', newStr14);var newStr14 = str14.replace(/张三/g, '张无忌');console.log('newStr14=', newStr14);</script>
2、Math 对象
JS Math对象允许你对数字执行数学任务
四舍五入 Math.round()向上取整 Math.ceil()向下取整 Math.floor()绝对值 Math.abs()平方根 Math.sqrt()最大值和最小值 Math.min() Math.Max() 可用于查找参数列表中的最小值和最大值Math.min(192,2980,22,23,12,-28); //结果 -28随机数 Math.random() //返回0~1的随机数Math.random()*(max-min)+min //介于min~max之间的随机数
3、数组方法
1、pop() 删除数组的最后一个元素并返回删除的元素。
2、 push() 向数组的末尾添加一个或更多元素,并返回新的长度。
3、 shift() 删除并返回数组的第一个元素。
4、 unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
5 、map()。对原来成员改头换面
6、 filter() 检测数值元素,并返回符合条件所有元素的数组。
7、 forEach() 遍历数组。
8、 isArray() 判断对象是否为数组。
9、 find() 返回符合传入测试(函数)条件的数组元素。 // 只返回符合条件的第一个成员, 没有符合条件就返回 undefined
10、 findIndex() 返回符合传入测试(函数)条件的数组元素索引。
11、 indexOf() 搜索数组中的元素,并返回它所在的位置。
12、 lastIndexOf() 搜索数组中的元素,并返回它最后出现的位置。
13、 some() 检测数组元素中是否有元素符合指定条件。 // 用来判断数组是否包含符合条件的成员, 包含返回 true, 不包含返回 false
14、 includes() 判断一个数组是否包含一个指定的值。 // 成员只能是基本数据类型
15、 join() 把数组的所有元素放入一个字符串。
16、 slice() 选取数组的一部分,并返回一个新数组。
17、 splice() 从数组中添加或删除元素。
18、 sort() 对数组的元素进行排序。
19、 reverse() 反转数组的元素顺序。
数组里面能否放不同类型的数据?Array.isArray(数组名)arryname.includes('字符')arryname.join('-'); //"-"是分隔符,默认是逗号,也可以是其他arryname.reverse()arryname.slice(num1.num2) //找到从第num1到第num2个字符,,,不包括第num2个字符arryname.push() //在arrayname数组中添加新的元素,在末尾添加arrayname.pop() //删除数组中的元素<script>// 1. Array.isArray() 判断对象是否为数组。var arr1 = [12, 3, 4, 5];// var arr1 = new Array();console.log(typeof arr1); // objectvar boo1 = Array.isArray(arr1);console.log('boo1', boo1);// 2. includes() 判断一个数组是否包含一个指定的值。 // 成员只能是基本数据类型var arr2 = ['a', 'b', 'c', 'd'];var boo2 = arr2.includes('a'); //console.log('boo2', boo2);// 3. join() 把数组的所有元素放入一个字符串。var arr3 = ['a', 'b', 'c', 'd'];var str3 = arr3.join('-'); // -是分隔符, 默认是逗号,也可以上是其他console.log('str3=', str3);// 4. reverse() 反转数组的元素顺序。var arr4 = ['a', 'b', 'c', 'd'];var newArr4 = arr4.reverse();console.log('newArr4', newArr4);// 5. slice() 选取数组的一部分,并返回一个新数组。类似字符串的slice方法var arr5 = [1, 2, 3, 4, 5, 6, 7, 8, 9];var newArr5 = arr5.slice(2, 5);console.log('newArr5=', newArr5);// 6. pop() 删除数组的最后一个元素并返回删除的元素。var arr6 = [1, 2, 3];arr6.pop();console.log('pop', arr6);// 7. push() 向数组的末尾添加一个或更多元素,并返回新的长度。var arr7 = [1, 2, 3];arr7.push(4);console.log('push', arr7);// 8. shift() 删除并返回数组的第一个元素。// 9. unshift() 向数组的开头添加一个或更多元素,并返回新的长度。// 10. map()。对原来成员改头换面,传入一个函数, 返回一个新的数组var arr10 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];var newArr10 = arr10.map(function(item, index) {// 对名字进行处理var name = item.name.toUpperCase();return {name: name,age: item.age - 10};});console.log('newArr10=', newArr10);console.log('----------11. filter()----------------')// 11. filter() 检测数组元素,并返回符合条件所有元素的数组。var arr11 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];var newArr11 = arr11.filter(function(item, index) {return item.age >= 20;});console.log('newArr11=', newArr11);console.log('----------12. forEach() ----------------')// 12. forEach() 遍历数组。var arr12 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];arr12.forEach(function(item, index) {console.log(index, item);});console.log(str);// for循环var filmList = [{filmName: '电影1',time: 120}, {filmName: '电影2',time: 120}, {filmName: '电影3',time: 120}, {filmName: '电影4',time: 130}]var str = '';for (var i = 0; i < filmList.length; i++) {var item = filmList[i];str += `<li><span>${item.filmName}</span> <span>${item}</span></li>`;}// document.querySelector('#list').innerHTML = str;// forEach循环var str = '';filmList.forEach(function(item, index) {str += `<li><span>${item.filmName}</span> <span>${item}</span></li>`;})// document.querySelector('#list').innerHTML = str;console.log('----------13. find() ----------------')// 13. find() 返回符合条件的数组元素。 // 只返回符合条件的第一个成员, 没有符合条件就返回 undefinedvar arr13 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];var newArr13 = arr13.find(function(item, index) {// return item.name === 'zs';return item.age > 10; // 只返回符合条件的第一个成员});console.log('newArr13=', newArr13);console.log('----------14. findIndex() ----------------')// 14. findIndex() 返回符合传入测试(函数)条件的数组元素索引。var arr14 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];var index14 = arr14.findIndex(function(item, index) {return item.age === 30;});console.log('index14=', index14);// 15. indexOf() 搜索数组中的元素,并返回它所在的位置。// 16. lastIndexOf() 搜索数组中的元素,并返回它最后出现的位置。console.log('----------17. some() ----------------')// 17. some() 检测数组元素中是否有元素符合指定条件。 // 用来判断数组是否包含符合条件的成员, 包含返回 true, 不包含返回 falsevar arr17 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];var boo17 = arr17.some(function(item, index) {return item.age > 10;})console.log('boo17=', boo17);console.log('----------18. splice() ----------------')// 18. splice() 从数组中添加或删除元素。参数可以是2个或者3个var arr18 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];arr18.splice(1, 1); // 两个参数,第1个参数表示下标,第2个参数,表示删除的成员个数console.log('arr18', arr18);var arr18 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}];var item = {name: '张欢',age: 18};arr18.splice(1, 2, item); // 三个参数,第1个参数表示下标,第2个参数,表示删除的成员个数,第3个参数用来替代被删除的成员console.log('arr18', arr18);console.log('---------- 19. sort() ----------------')// 19. sort() 对数组的元素进行排序。var arr19 = ['a', 'c', 'x', 'd'];var newArr19 = arr19.sort();console.log('newArr19=', newArr19); // 按字母的升序排列var arr19 = [1, 2, 10, 20, 8];var newArr19 = arr19.sort();console.log('newArr19=', newArr19);// 传入一个函数参数,a-b升序排列,b-a降序排序console.log('---------- 19. sort(),传入函数 ----------------')var newArr19 = arr19.sort(function(a, b) {return b - a;});console.log('newArr19=', newArr19);console.log('---------- 19. sort(),成员是对象 ----------------')// 成员是对象时也是如此var arr19 = [{name: 'zs',age: 10}, {name: 'ls',age: 20}, {name: 'ww',age: 30}, {name: 'zh',age: 18}];var newArr19 = arr19.sort(function(a, b) {return b.age - a.age;})console.log('newArr19=', newArr19);</script>
arryname.map(function(intem,index,整个数组){}) //三个参数arryname.foreach(function(item,index){})
浏览器内置对象 window(一般叫 BOM 对象)
- window
- window.open
- location对象
- location.href 获取浏览器地址
- location.href = ‘http://www.baidu.com‘ // 跳转到百度
- location.href = ‘http://www.baidu.com?username=huruqing‘
- history对象
- setTimeout 延迟
- setInterval 定时器
- navigation: user-agent
作业
- 登录倒计时
- 城市列表过滤
