一些花里胡哨的玩意

/**
 * 求幂
 */
7<<1 // 7*2**1 //7*Math.pow(2,1)

/**
* 除2取整
* /
9>>1 // 4

/**
* x2
* /
9<<1 // 18

/** 
 * 取整
 */
-66.33>>0 // ~~-66.33 // -666.33 | 0 // -66.33<<0 parseInt(-66.33) // ~(n.toFixed(0)) // Number(n.toFixed(0))
"-66.33px">>0// undefined

/* 
 * 交换变量
 */
 
a ^= b
b ^= a
a ^= b
//[a,b]=[b,a]

/**
 * 16进制颜色值转RGB
 * @param  {String} hex 16进制颜色字符串
 * @return {String}     RGB颜色字符串
 */
  function hexToRGB(hex) {
    var hexx = hex.replace('#', '0x')
    var r = hexx >> 16
    var g = hexx >> 8 & 0xff
    var b = hexx & 0xff
    return `rgb(${r}, ${g}, ${b})`
}

/**
 * RGB颜色转16进制颜色
 * @param  {String} rgb RGB进制颜色字符串
 * @return {String}     16进制颜色字符串
 */
function RGBToHex(rgb) {
    var rgbArr = rgb.split(/[^\d]+/)
    var color = rgbArr[1]<<16 | rgbArr[2]<<8 | rgbArr[3]
    return '#'+ color.toString(16)
}

/**
 * 什么情况下大没小大
 */
'大' < '小' // true

/**
 * 什么值的自身等于它的非
 */
[]  [] == ![] // true

/**
 * 不跳转提交
 */
<a href="javascript: void(document.form.submit())">
  提交
</a>

/**
 * indexOf
 */
if (~str.indexOf(searchFor)) {
  // searchFor 包含在字符串中
} else {
  // searchFor 不包含在字符串中
}


/**
 * 十六进制转十进制
 */
Number(0xf+'') // 15 // (0xf).toString() // 0xf|0 //  parseInt(0xf+'',16) // parseInt('f',16)

/**
 * 八进制转十进制
 */
077|0 // 63 // (077).toString()  // 077>>0 // parseInt(077+'',8) // parseInt('77',8)

/**
 * 八进制转十六进制
 */
(077).toString(16)

/**
 * 2的n次方
 */
(1)<<n

参考:
https://www.cnblogs.com/cfsxgogogo/p/12624621.html
https://javascript.ruanyifeng.com/grammar/operator.html
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值