13个JavaScript 一行程序,让你看起来就是个专家

孙干
• 阅读 899

目录

  1. 获得一个随机的布尔值(true/false)
    该函数使用Math.random()方法返回一个布尔值(true 或者 false)。Math.random创建一个0到1之间的随机数,我们只要检查它是否高于或低于0.5,就有50%机会得到true或false。
const randomBoolean = () => Math.random() >= 0.5;
console.log(randomBoolean());
  1. 检查所提供的日期是否为工作日
    使用这种方法,我们能够检查在函数中提供的日期是否是工作日或周末的日子。
const isWeekday = (date) => date.getDay() % 6 !== 0;
 
console.log(isWeekday(new Date(2021, 7, 6)));
// true  因为是周五
 
console.log(isWeekday(new Date(2021, 7, 7)));
// false 因为是周六

3.反转字符串
有几种不同的方法来反转一个字符串。这是最简单的一种,使用split()、reverse()和join()方法。

const reverse = str => str.split('').reverse().join('');
reverse('hello world');
// 'dlrow olleh'

4.检查当前标签是否隐藏
Document.hidden (只读属性)返回布尔值,表示页面是(true)否(false)隐藏。

const isBrowserTabInView = () => document.hidden;
isBrowserTabInView();

场外:无意间发现爱奇艺广告播放时间居然是在当前标签页激活的时候才会进行倒计时,离开当前标签页的时候,倒计时停止,百度一下发现document.hidden这个东东。

document.hidden是h5新增加api使用的时候有兼容性问题。

var hidden
if (typeof document.hidden !== "undefined") {
    hidden = "hidden";
} else if (typeof document.mozHidden !== "undefined") {
    hidden = "mozHidden";
} else if (typeof document.msHidden !== "undefined") {
    hidden = "msHidden";
} else if (typeof document.webkitHidden !== "undefined") {
    hidden = "webkitHidden";
}
console.log("当前页面是否被隐藏:" + document[hidden])
  1. 检查一个数字是偶数还是奇数
const isEven = num => num % 2 === 0;
console.log(isEven(2));
// true
console.log(isEven(3));
// false
  1. 从一个日期获取时间
const timeFromDate = date => date.toTimeString().slice(0, 8);
 
console.log(timeFromDate(new Date(2021, 0, 10, 17, 30, 0)));
// "17:30:00"
 
console.log(timeFromDate(new Date()));
// 打印当前的时间
  1. 保留 n 位小数
const toFixed = (n, fixed) => ~~(Math.pow(10, fixed) * n) / Math.pow(10, fixed);
// 事例
toFixed(25.198726354, 1);       // 25.1
toFixed(25.198726354, 2);       // 25.19
toFixed(25.198726354, 3);       // 25.198
toFixed(25.198726354, 4);       // 25.1987
toFixed(25.198726354, 5);       // 25.19872
toFixed(25.198726354, 6);       // 25.198726
  1. 检查当前是否有元素处于焦点中
    我们可以使用document.activeElement属性检查一个元素是否当前处于焦点。
const elementIsInFocus = (el) => (el === document.activeElement);
elementIsInFocus(anyElement)
// 如果在焦点中返回true,如果不在焦点中返回 false
  1. 检查当前浏览器是否支持触摸事件
const touchSupported = () => {
  ('ontouchstart' in window || window.DocumentTouch && document instanceof window.DocumentTouch);
}
console.log(touchSupported());
// 如果支持触摸事件,将返回true,如果不支持则返回false。
  1. 检查当前浏览器是否在苹果设备上
const isAppleDevice = /Mac|iPod|iPhone|iPad/.test(navigator.platform);
console.log(isAppleDevice);
  1. 滚动到页面顶部
const goToTop = () => window.scrollTo(0, 0);
goToTop();
  1. 获取参数的平均数值
const average = (...args) => args.reduce((a, b) => a + b) / args.length;
average(1, 2, 3, 4);
// 2.5

13.华氏/摄氏转换

const celsiusToFahrenheit = (celsius) => celsius * 9/5 + 32;
const fahrenheitToCelsius = (fahrenheit) => (fahrenheit - 32) * 5/9;
// 事例
celsiusToFahrenheit(15);    // 59
celsiusToFahrenheit(0);     // 32
celsiusToFahrenheit(-20);   // -4
fahrenheitToCelsius(59);    // 15
fahrenheitToCelsius(32);    // 0

到此这篇关于13个JavaScript 一行程序,让你看起来就是个专家的文章就介绍到这了

点赞
收藏
评论区
推荐文章
Python进阶者 Python进阶者
4年前
一篇文章告诉你JavaScript 如何实现继承
背景简介JavaScript在编程语言界是个特殊种类,它和其他编程语言很不一样,JavaScript可以在运行的时候动态地改变某个变量的类型。比如你永远也没法想到像isTimeout这样一个变量可以存在多少种类型,除了布尔值true和false,它还可能是undefined、1和0、一个时间戳,甚至一个对象。如果代码跑异常,打开浏览器,开始断点调试,发现
Karen110 Karen110
4年前
一篇文章带你了解JavaScript随机数
一、Math.random()Math.random()返回0到1之间的随机数(包括0,不包括1)。语法:Math.random();//returnsarandomnumber代码:项目JavaScriptMath.random()单击按钮以显示0(含)和1(不含)之间的随
liam liam
2年前
Mock 语法讲解
是生成随机数据,拦截Ajax请求的JavaScript库。本文来介绍下Mock的常用语法。模拟数据生成随机数据Mock.Random.boolean()生成一个随机的布尔值。例如:返回值为true或false。Mock.Random.integer(min
Souleigh ✨ Souleigh ✨
5年前
安利几个JS开发小技巧
开发小技巧<br/1、转换布尔值除了常规的布尔值true和false之外,JavaScript还将所有其他值视为truthy或falsy。除非另有定义,否则JavaScript中的所有值都是truthy,除了0,“”,null,undefined,NaN,当然还有false,这些都是falsy我们可以通过使用负算运算符轻松地
DaLongggggg DaLongggggg
4年前
python百题大冲关-确定字符串是否包含唯一字符
本次挑战中,你需要在unique_chars.py文件中补充函数has_unique_chars的空缺部分。has_unique_chars函数接受一个参数,string用于指定传入的字符串;has_unique_chars函数输出一个布尔值,即True或者False。你需要补充has_unique_chars函数,使其可以识
Stella981 Stella981
4年前
Bitmap 位图 Java实现
一、结构思想以bit作为存储单位进行0、1存取的数据结构。可用作布尔值存取,比如给定第i位,该bit为1则表示true,为0则表示false。二、使用场景及优点适用于对布尔或0、1值进行(大量)存取的场景。如:记录一个用户365天的签到记录,签了为true,没签为false。若是以普通key/valu
Stella981 Stella981
4年前
PHP 隐式转换(自动装换) 和 bc 精度函数
<?phpecho1true;//true1echo'<hr/';echo1false;//false0echo'<hr/';echo1.1false;echo'<hr/';echo1.1tru
Stella981 Stella981
4年前
Golang学习
//将布尔值转换为字符串true或falsefuncFormatBool(bbool)string//将字符串转换为布尔值//它接受真值:1,t,T,TRUE,true,True//它接受假值:0,f,F,FALSE,false,False//其它任何值都返回一个错误。funcParseBool(st
小万哥 小万哥
2年前
Python 布尔类型
布尔值表示两个值之一:True(真)或False(假)。布尔值在编程中,您经常需要知道一个表达式是否为True或False。您可以在Python中评估任何表达式,并获得两个答案之一:True或False。当您比较两个值时,表达式会被评估,Python会返回
小万哥 小万哥
2年前
C# 布尔值和条件语句:入门指南和实用示例
C布尔值在编程中,通常需要一个只能有两个值之一的数据类型,比如:是/否开/关真/假为此,C有一个bool数据类型,可以取true或false的值。布尔值使用bool关键字声明布尔类型,只能取true或false的值:示例:csharpboolisCShar
小万哥 小万哥
1年前
Kotlin 布尔值教程:深入理解与应用示例
Kotlin中的布尔值是一种数据类型,仅能存储true或false两种状态,适用于表示二选一的情况,如开关或真假判断。布尔类型可通过Boolean关键字声明,并直接赋值为true或false。此外,Kotlin支持使用比较运算符创建布尔表达式,用于条件判断。条件语句包括if、else和elseif,允许根据不同条件执行特定代码块。特别地,在Kotlin中,if..else结构不仅能作为语句使用,还能作为表达式,即可以在条件判断的同时返回一个值。这种灵活性使得Kotlin在处理条件逻辑时更为简洁高效。