当前位置: 首页 > article >正文

javascript中各种风骚的代码

1.判断数值符号是否相同

	function numericSymbolsIsEqual(x: number, y: number): boolean {
	  return (x ^ y) >= 0
	}
	console.log(numericSymbolsIsEqual(1, 1))
	console.log(numericSymbolsIsEqual(-1, 1))
	console.log(numericSymbolsIsEqual(1, -1))
	console.log(numericSymbolsIsEqual(-1, -1))

输出如下
在这里插入图片描述

判断一个数n是否为2的整数幂

代码部分

	function isPowerOfTwo(n: number): boolean {
	  return (n & (n - 1)) === 0
	}
	console.log(isPowerOfTwo(4))
	console.log(isPowerOfTwo(5))
	console.log(isPowerOfTwo(6))
	console.log(isPowerOfTwo(1024))
	console.log(isPowerOfTwo(1021))

输出如下
在这里插入图片描述

星级评分

enum Score {
  veryPoor = 1,
  poor,
  ordinary,
  good,
  veryGood
}
function starRating(n: Score): string {
  return '★★★★★☆☆☆☆☆'.slice(5 - n, 10 - n)
}
console.log(starRating(Score.veryPoor))
console.log(starRating(Score.poor))
console.log(starRating(Score.ordinary))
console.log(starRating(Score.good))
console.log(starRating(Score.veryGood))

输出如下

在这里插入图片描述

0和1切换

	function toggle(n: number): number {
	  return n ^= 1
	}
	console.log(toggle(1))
	console.log(toggle(1))
	console.log(toggle(0))
	console.log(toggle(0))
	console.log(toggle(1))

在这里插入图片描述

浮点数向下取整

	function roundDownDoubleNon(n: number): number {
	  return ~~n
	}
	function roundDownRightShift(n: number): number {
	  return n >> 0
	}
	function roundDownLeftShift(n: number): number {
	  return n << 0
	}
	function roundDownOr(n: number): number {
	  return n | 0
	}
	console.log(roundDownDoubleNon(Math.PI))
	console.log(roundDownRightShift(Math.PI))
	console.log(roundDownLeftShift(Math.PI))
	console.log(roundDownOr(Math.PI))

x乘2的y次幂

	function getTwoYPower(x: number, y: number): number {
	  return x << y
	}
	
	// 输出1乘2的2次方
	console.log(getTwoYPower(1, 2))
	// 输出2乘2的3次方
	console.log(getTwoYPower(2, 3))
	// 输出3乘2的2次方
	console.log(getTwoYPower(3, 2))

在这里插入图片描述

让天底下的代码再也没有bug

	try {
	  //code
	} catch (error) {
	  location.href = `https://baidu.com/esarch?q=js+${error.message}`
	}

这个就不做演示啦哈


http://www.kler.cn/news/109122.html

相关文章:

  • Redis快速上手篇七(集群-六台虚拟机)
  • 杂牌行车记录仪特殊AVI结构恢复案例
  • (一)MySQL-架构
  • 8.Scala面向对象编程
  • STM32H750之FreeRTOS学习--------(一)初识RTOS
  • Go 小知识之 Go 中如何使用 set
  • OPNET <<< Program Abort >>> Standard function stack imbalance
  • 自动化项目实战 [个人博客系统]
  • 论坛介绍 | COSCon'23 开源文化(GL)
  • 算法笔记【6】-简单选择排序算法
  • 关于使用ScriptObject作为项目数据配置
  • 私有云:【11】win10安装Agent客户端组件
  • 【Linux】环境变量
  • GoLong的学习之路(十一)语法之标准库 fmt.Printf的使用
  • JDK、JRE及JVM的关系及作用
  • web:[网鼎杯 2020 青龙组]AreUSerialz
  • 第44天:前端及html、Http协议
  • ChinaSoft 论坛巡礼 | 智慧化 IDE 论坛
  • day37(事件轮询机制 ajaxGet执行步骤与案例(五个步骤) ajax属性 PHP返回JSON对象(两种))
  • 08 MIT线性代数-求解Ax=b:可解性与结构Complete Solution of Ax=b
  • 设计模式——装饰器模式(Decorator Pattern)+ Spring相关源码
  • el-table多选表格 实现默认选中 删除选中列表取消勾选等联动效果
  • 292_C++_建立流连接,创建多个线程执行I\O异步操作
  • 搭建MyBatis
  • volatile 系列之如何解决可见性问题
  • excel技巧
  • JVM虚拟机:从结构到指令让你对栈有足够的认识
  • Kali安装docker
  • 婚礼的魅力
  • 清华训练营悟道篇之操作系统的内存管理