1,一元运算符
因为只运算一次所以叫做一元运算符
<script>
let num1=3
num1+=5
console.log(num1);
</script>
num1+=5 //num1=num1+5
2,三元运算符
就是把 if esle写成一行代码
let num1=1
let num2=2
if (num1>num2){
console.log('yes');
}else
console.log('no');
num1>num2?console.log('yes'):console.log('no')
num1>num3?console.log('yes'):console.log('no')
num1>num2成立执行第一句 成立执行第二句。两句之间用冒号隔开。
3,延时器 setTimeout
setTimeout(函数,延时时间)
let a=6 //定义一个变量 赋值是6
console.log(a); //输出这个变量
setTimeout(()=>{ //延时器 格式
a=10 //修改这个变量值
console.log(a); //在十秒后输出这个变量
},1000);
()=>{} 箭头函数
在第一个 6输出后 等10秒钟只会 才会输出修改的变量值10
4, 定时器 setInterval
setInterval(函数,定时间隔) 格式与延时器相同
let a=10
console.log(a);
setInterval(()=>{
a+=9
console.log(a); 每一秒计算一次 输出a的结果
},1000);
每经过一秒就会计算一次
5,定时器与延时器的区别
定时器(setInterval)与延时器(setTimeout)格式相同
定时器每经过你设定的时间之后就会执行一次函数,无限次数执行
延时器只有在你选择的时间去执行 执行一次就会停止 ,只执行一次
6,字符串截取方法
slice
<script>
let a='小黑不白不想黑'
console.log(a);
</script>
1, 如果想要获取前两个字符 则需要用到slice
let get=a.slice(0,2)
let a='小黑不白不想黑'
let get=a.slice(0,2)
console.log(get);
a.slice(参数索引,参数之前的)
参数索引 (包括当前索引) 粒子 (0,2)0被包含 那就把0索引的字符‘小’截取
参数之前的(不包含当前的索引) 粒子(0,2)2不被包含,那就不截取2索引的不,只截取到2之前的黑
2,如果只传第一个参数 那就默认从当前索引截取所有字符
<script>
let a='小黑不白不想黑'
let ge=a.slice(4)
console.log(ge);
</script>
3,截取后两位
如果传入负值那就会从负数开始截取
let a='小黑不白不想黑'
let ge=a.slice(-2)
console.log(ge);
7,数组的截取方式 slice
slice 跟字符串相同
let a=[1,2,3,4,5]
let get=(a.slice(1,3))
console.log(get);
从索引1开始截取到索引3 截取两个中间的索引 包含索引1不含索引3
要是只传一个参
<script>
let a=[1,2,3,4,5]
let get=(a.slice(1,3))
//从索引1开始截取到索引3 截取两个中间的索引
//包含索引1不含索引3
let get1=(a.slice(2))
//从索引2开始截取 包含索引2
console.log(get,get1);
</script>
8,数组的splice
splice 第一个参数 是索引位置 (从第几个开始删除)第二个参数是要删除几个
<script>
let num=[1,2,3,4,5]
let num1=(num.splice(2,1))
console.log(num);
</script>
删除3 3的索引是2,只删除3一个 第二个传参传1
删除方法的返回值就是被删除的数
let arr=[1,2,3,4,5]
let arr1=(arr.splice(2,1))
console.log(arr1);
splice 也可以在指定位置上添加
let name=['小','黑','美']
let name1=(name.splice(2,0,'真'))
console.log(name);
在第三个位置加上一个真字 它的索引应该是2,不删除字符,加一个‘真’
9,数组转为字符 .join
数组名.join('拼接符') 如果不想有拼接符传空字符串
let int=[1,2,3,4,5]
console.log(int.join(''));
将数组转成字符串
let int1=[1,2,3,4,5]
console.log(int1.join('-'));
加字符-
10,字符串转数组 .split
字符串.split() 默认情况下不传 每个都分割
let arr=('13546')
console.log(arr.split(''));
或者传 根据所内容分割
let num=('12-345')
console.log(num.split('-'));
11,数组过滤 filter
就是把满足条件的放进一个数组里面
如果我们需要把一组数组中的大于20的数过滤出来
let num1=[1,2,3,6,8,34,12,43,21,5,9]
let num2=num1.filter((item,index)=>{
return item>20
})
console.log(num2);
定义一个数组,调用函数找出大于20的数,放进这个数组里面 得到的就是大于20的数字
12,时间对象
时间对象可以储存任意一个日期,并且可以精确到毫秒数
let date = new Date() // 先定义一个时间对象
注意:使用关键字new Date()的首字母必须大写
let year = date.getFullYear() //得到当前年份
let mounth = a(date.getMonth()+1) //月份
let day = a(date.getDate()) //日期
var time=year+'-'+mounth+'-'+day //在年月日 加横线
console.log(time); //打印出来
function a(num) { //定义函数
if (num<10) { //判断值(月份和日期)是否小于10
return '0'+num //小于10 在前面加个0
}else{
return num //否则就不加
}
}