一丶位运算符
& 与 都为1结果为1
| 或 只要有1结果为1
^ 异或 相同为0不同为1
~ 非 0变1,1变0
>> 右移 有符号右移
>>> 右移 无符号右移
<< 左移
console.log(3&2); //2
3二进制 011
&
2二进制 010
-------
010
console.log(3|2); //3
011
|
010
--------
011
console.log(3^2); //1
011
^
010
--------
110
console.log(~3); //-4
~011
--------
100
-3二进制
js数值类型---64位
32位 最高位-符号位
18------10010
00000000 00000000 00000000 00010010 18
-18
00000000 00000000 00000000 00010010 取反-->
11111111 11111111 11111111 11101101 加1 逢2进1--->
11111111 11111111 11111111 11101110
~18 得-19
00000000 00000000 00000000 00010010 取反--->
11111111 11111111 11111111 11101101 最高位1为负数 ~后的数 减一-->
11111111 11111111 11111111 11101100 取反---->
00000000 00000000 00000000 00010011 十进制=19
加负号--->-19
左移<<
2<<5 2向左移动五位
00000000 00000000 00000000 00000010 :2 左减:高位减-->
000 00000000 00000000 00000010 右加:低位加 --->
00000000 00000000 00000000 01000000
-2>>5
11111111 11111111 11111111 11111101
00000000 00000000 00000000 00000010 -2二进制
000 00000000 00000000 00000010
00000000 00000000 00000000 01000000 左移5
转为十进制:64 加负号:-64
64>>5
00000000 000000000 00000000 01000000 二进制 右移-->
00000000 000000000 00000000 00000010 右移动 高位补0
-64>>5
00000000 000000000 00000000 01000000 二进制 取反-->
11111111 111111111 11111111 10111111 加1 逢2进1--->
11111111 111111111 11111111 11000000 -64:二进制
有符号右移,看符号位 如为1,补1 --->
11111111 111111111 11111111 11111110 减1-->
11111111 111111111 11111111 11111101 取反--->
00000000 000000000 00000000 00000010
转为十进制:2 加负号-2
-64>>>5
11111111 111111111 11111111 11000000 -64:二进制
无符号右移,不看符号位,高位全补0 --->
00000011 111111111 11111111 11111110
二丶三目(三元)运算符
a=10
if(a>0){
alert("yes")
}else{
alert("no")
}
c=a>0? alert("yes"): alert("no")
三丶js内置对象
Date
Math
1.Date 日期对象
console.log(d1.getDate()); //1 日期
// console.log(d1.getDay()); //5 周天0
// console.log(d1.getHours()); //11 小时
// console.log(d1.getMinutes()); //26 分钟
// console.log(d1.getMonth()+1); //6 月份加1
// console.log(d1.getSeconds()); //秒 17
// console.log(d1.getTime()); //返回1970.1.1午夜0时开始到当前时间毫秒数
// console.log(d1.getFullYear()); //年
// console.log(d1.toLocaleDateString()); //年月日 2022/7/1
// console.log(d1.toLocaleString()); //年月日时间 2022/7/1 13:26:01
// console.log(d1.toLocaleTimeString()); //时间 13:26:01
formatDate("-")----2022-07-01
formatDate("/")----2022/07/01
formatDate("zh")----2022年7月1日
formatDate(".")----2022.07.01
---原型封装---
对象:属性,方法
日期格式化
formatDate("yyyy-MM-dd hh:mm:ss")
formatDate("yyyy-MM-dd")
formatDate("yyyy/MM/dd")