<script>
// 1.数学对象Math
// 1.1求圆周率 :Math.PI // 这是一个属性,所以不加()
// 1.2求最大值,最小值 :Math.max() Math.min() eg:Math.max(1,2,3)
// 1.3向上取整 Math.ceil(数据) Math.ceil(3.14) //4
// 1.4向下去整 Math.floor(数据) Math.floor(3.14) //3
// 1.5四舍五入 Math.round(数据) Math.floor(3.14) //3
// 1.6随机数 Math.random() 随机生成0-1的数,包含0不包含1
// 1.7绝对值 Math.abs(数据) Math.abs(-3.14) //3.14
// 1.6拓展:生成指定范围内的随机数
// function getRandom(start,end){
// return Math.floor(Math.random()*(end - start +1))+start
// }
</script>
<script>
// 2.日期对象new Date()
// var date = new Date()
// 2.1拿到年月日时分秒 星期几
// date.getFullYear()
// date.getMonth() //月份需要+1才是真实的月份
// date.getDate()
// date.getHours()
// date.getMinutes()
// date.getSeconds()
// date.getDay() //0-6 0代表星期天 1-6代表周1-周6
// 2.2拿到毫秒数(时间戳)
// date.getTime()
// +new Date()
// 总结:如果需要拿到固定的年月日时分秒的数字,需要通过2.1中的方法,如果需要计算时间,使用2.2的方法
// 2.3拿到某个时间的年月日时分秒
// var date = new Date(时间)
// eg :var date = new Date('2021-10-1 22:00:00')
// 案例:拿到距离目标时间的时分秒
// 1.需要结束(目标)时间和当前时间的毫秒差
// var endTime = +new Date('2021-10-1 22:00:00')
// var currentTime = +new Date()
// // 2.计算两个时间段的秒数差(1s = 1000ms)
// var sec = (endTime - currentTime) / 1000
// var s = parseInt(sec % 60)
// var m = parseInt(sec / 60 % 60)
// var h = parseInt(sec / 60 / 60 % 24)
// var d = parseInt(sec / 60 / 60 / 24)
</script>
<script>
// 3.数组对象Array
// var arr = [1,1];
// 3.1增
// 从前增
// arr.unshift('我是前面增加的')
// 返回值:数组的长度
// 从后增
// arr.push('我是从后面增加的')
// 返回值:数组的长度
// 3.2删
// 从前删
// arr.shift()
// 返回值:删除的元素
// 从后删
// arr.pop()
// 返回值:删除的元素
// 3.3改
// arr[索引号] = 值
// arr[0]=2
// 3.4查
// 语法:数组.indexOf(数据)
// 只会返回匹配到的第一个索引值,如果匹配不到,就返回-1
// eg:arr.indexOf(1)
// 3.4拓展:从某个索引号开始查
// var arr = [0,1,2,3,4,5,6,7,8,9]
// var index = arr.indexOf(0) //查找所有的内容有没有
// for(var i = 3;i<arr.length;i++){
// if(arr.indexOf(0)!=-1){
// alert(i)
// }
// }
// 3.5数组排序
// 语法:数组.sort(function(a,b){
// 升序:return a-b
// 降序:return b-a
// })
// 3.6数组翻转
// 语法 数组.reverse()
// eg:arr.reverse()
// 3.7数组转字符串
// 语法:数组.join(连接符)
// arr.join(',') // '1,1'
// arr.join('|') // '1|1'
// 案例:数组去重
// 效果:将数组中重复的元素删除
// 思路:
// 1.需要一个新数组
// 2.遍历旧数组,如果旧数组中的某一个元素在新数组的indexOf的返回值为-1,代表没有出现
// 3.将这个没出现在新数组的值,push到新数组即可
// 4.循环结束后,新数组存放的就是去重后的数组了
</script>
<script>
// 4.字符串对象String
// var str = '123456789'
// 4.1查找某个字符的索引 indexOf
// var index = str.indexOf(查找的字符)
// 4.2字符串切割 substr
// str.substr(从哪切,切多少)
// str.substr(3,3)
// 4.3替换字符串内容 replace()
// str.replace(要替换的内容,替换为什么)
// str.replace('1','*')
// 注意:这里只会替换匹配到的第一个
// 4.4转换大小写
// var str = 'abCdeF'
// 小写 abcdef
// console.log(str.toLocaleLowerCase());
// 大写 ABCDEF
// console.log(str.toLocaleUpperCase());
// 4.5去除字符两端的空格trim
// var str = ' abc';
// console.log(str.trim().length);// 3
// str = 'abc'
// 4.6字符串切割
// 效果:按照特定的某个字符,将字符串切割成一段儿一段儿的,然后放到数组里面去
// var str = '1|2|3'
// 语法:字符串.split(分隔符)
// console.log(str.split('|'));
// 4.7字符串补全(价值3000,选记)
// 效果:实现字符串按需要的位数补全内容
// var str = '9'
// 语法:字符串.padStart(补充后的长度,补充的内容)
// console.log(str.padStart(3,0));
</script>
<script>
// 5.其他
// 数据类型分为2种,简单数据类型和复杂数据类型(引用数据类型)
// 数据存储也分2中,栈 和 堆
// 简单数据类型是存放在栈中的,复杂数据类型是存放在堆中的
// 复杂数据类型在栈中存放的是物理地址,可以通过这个地址,在堆中找到相应的对象
// var obj = {
// name : 'zs'
// }
// 对象赋值的时候只是将内存的物理地址赋值过去了,这个时候obj1也是指向了obj的内存地址,所以他俩是公用同一个对象
// var obj1 = obj
// obj.name = 'lw'
// console.log(obj1.name);//lw
JS第六天
最新推荐文章于 2024-04-26 16:47:03 发布