这是我参与8月更文挑战的第9天,活动详情查看:8月更文挑战
☆☆☆ 今天的内容(使用函数 实现具体功能) 重要!! 也是最最基本能力要求! ☆☆☆
可作为初学者的学习路线, 可参考一下, 学习进度也不是特别赶! 持续更新,
用自己的理解, 简单又全面概括基础知识点, 大部分内容为白话文内容, 基础中的基础 方便加深理解!
巩固学习 JavaScript 基础知识, 加深理解记忆, 打牢地基才能筑高楼! 加油
如需更详细了解学习- 推荐查看 MDN-JavaScript 文档, (红宝书/白皮书/
蓝皮书/..)进行学习进阶!
更多阅读: 前文更新回顾
【重学 JS】每天学习巩固基础: 【day1】
☆☆☆ 今天的内容比较重要, 也是工作中最基本能力要求! ☆☆☆
开始今天的学习吧! 认真对待每一天!!
1、梳理昨天学习知识点
-
数组去重 :
-
方案二 : 数组先排好序 1 1 1 33 33 55 66 100
如果前一个数 != 后一个数 就将前一个数存入到数组中 1 33 55 66 100
for (var i = 0; i < arr.length; i++) {
if (arr[i] != arr[i + 1]) {
brr.push(arr[i])
}
}
- 排序:
冒泡排序法选择排序法
sort(function (a, b) {
return a - b
})
-
数组新增方法 :
forEachindexOfmapfilterreduce -
string对象 :charAt()charCodeAtString.fromCharCodeindexOflastIndexOfsubstrsubstringsplitreplacetrimtoLowerCase
2、Math 对象 数学对象
注意 :
Math对象 不需要定义 直接通过Math.方式 调用方法
2.1 取整的三个方法 :
-
Math.floor(m)向下取整 Math.floor( 4.9 ) 4 Math.floor( -4.9 ) -5 得到比 m 小的最大整数 -
Math.ceil(m)向上取整 Math.ceil(4.3) 5 Math.ceil(-4.3) -4 得到比 m 大的最小整数 -
Math.round(m)四舍五入 Math.round(4.5) 5 -
Math.abs(m)取绝对值 -
Math.pow(m,n)获取 m 的 n 次方 -
Math.sqrt(m)取开方 -
Math.max(多个数)取最大值 -
Math.min()最小值 -
Math.min.apply(null , [ ])获取数组的最小值 -
Math.max.apply(null , [ ])获取数组的最大值 -
Math.random()获取[0,1)之间的随机小数
获取任意区间值公式 :
Math.round(Math.random() * (max - min) + min)
封装功能函数:
定义一个函数 获取任意区间值数据:
function rand(min,max){
return Math.round( Math.random()_(max-min) + min )
}
3、Date 对象
定义:
var d = new Date(); 获取当前的系统时间
toLocaleString() 将日期转成本地时间格式getFullYear() 获取年getMonth() 月 获取 0--11 使用 d.getMonth() + 1getDate() 日getHours() 小时getMinutes() 分getSeconds() 秒getDay()星期 获取 0--6 0 表示星期日
4、写一个函数 功能 dateToString()
4.1 函数功能 : 显示自定义的日期时间格式
function dateToString(now) {
var str1 = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
var h = toTwo(now.getHours())
var m = toTwo(now.getMinutes())
var s = toTwo(now.getSeconds())
var str2 = h + ':' + m + ':' + s
return str1 + '' + str2
}
4.2 函数功能 : 以 0 补位
函数功能: 判断传递的参数是否小于 10 如果小于 10 就在数字前面拼接 0
function toTwo(num) {
//返回一个两位数
return num < 10 ? '0' + num : num
}
5、自定义时间格式
没有时分秒 默认是早上 8 点
var d = new Date('1998-09-09')
6、写一个函数: stringToDate()
函数功能: 将字符串转成日期
function stringToDate(str) {
return new Date(str)
}
7、时间差: getTime()
函数功能: 返回从 1970.1.1 午夜 到 now 这个时间的毫秒值
时间差 函数
function diff(start, end) {
//返回时间差 单位 秒
return Math.abs(start.getTime() - end.getTime()) / 1000
}
8、设置时间 setDate()
设置 几天后的时间
setDate() 用法: 日期对象.setDate( 当前的日期 + 天数 ) setDate() 方法改变
原来日 期对象的结果
例如 :
var now = new Date() //设置 9 天后的时间
now.setDate(now.getDate() + 9)
alert(now)
setTime() 用法 :
日期对象.setTime( 当前日期毫秒值 + 天数 * 1000 * 3600 * 24 )
9、定时器 setInterval
- 定义:
var timer = setInterval(要执行的任务, 间隔时间) // 时间默认 :毫秒
一般 要执行的任务 是一个功能函数
- 清除定时器:
clearInterval(定时器名称);
加油, 追梦人
学习就是一个不断进行的过程, 坚持下去, 定有收获!
日积月累, 巩固基础, 早进大厂!
坚持很不容易, 坚持下来更不容易, 你真棒!
Calm Down & Carry On!