1.1k 1 分钟

# 啥是时区?

时区是地球上的区域使用同一个时间定义。以前,人们通过观察太阳的外置(时角)决定时间,这就使得不同经度的地方的时间各有不同,为了统一使用同一个时间,就引入了时区的概念。时区通过设立一个标准时间部分地解决了这个问题。世界各国位于地球的不同位置,因此不同国家,特别是东西跨度大的国家日出、日落时间必定有偏差,这些偏差就是时差。

# 表示

协调世界时(UTC)是最主要的世界时间标准,其以院子时秒长为基础,在时刻上尽量接近于格林威治标准时间。协调世界时是世界上调调节时钟和时间的主要标准。如果时间是以协调世界时(UTC)表示,则在时间后面加上 “Z”,“Z” 是协调世界时中 0 时区的标志。UTC 时间也叫祖鲁时间,因为在北约音标字母中用 “Zulu” 表示 “Z”。
UTC 偏移量的表示形式为:±[hh]:[mm]、±[hh][mm] 或者 ±[hh]。比如北京时间比协调世界时(UTC)早八小时,那么应当表示为:UTC+8。

JavaScript 获得当前客户端的时区
对象是 ECMAScript 国际化 API 的一个命名空间,它提供了精确的字符串对比、数字格式化和日期格式化。我们需要使用这个 API 的 DateTimeFormat 对象。具体可以参考:MDN Intl.DateTimeFormat

获得客户端当前时区:

Intl.DateTimeFormat().resolvedOptions().timeZone // 'Asia/Shanghai'

1.6k 1 分钟

// 判断标准:窗口高度 + 滚动条位置 >= 页面高度/* -------------------------------------------- */// 原生 JS 判断整个文档滚动至底部window.onscroll = ()=>{ // 窗口高度 var windowHeight = document.documentElement.clientHeight || document.body.clientHeight; // 页面高度 var documentHeight = document.documentElement.scrollHeight...
1.8k 2 分钟

在 JavaScript 中,进行精确的类型检查通常涉及使用 typeof 运算符和 instanceof 关键字。以下是一些实用的函数和方法,用于进行精确的类型检验:

  1. 使用 typeof 检查原始类型(例如: string , number , boolean )。
  2. 使用 instanceof 检查对象的类型,特别是检查某个实例是否是构造函数的实例。
  3. 使用 Array.isArray() 检查数组类型。
  4. 使用 typeofObject.prototype.toString.call() 结合,检查复杂类型(例如: function , object , symbol , bigint )。

5.4k 5 分钟

navigator 对象包含有关浏览器的所有信息,且支持所有浏览器。

navigator 对象有一个属性为 userAgent,这是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值。所以我们可以通过判断 navigator.userAgent 里面是否包含某些值来判断。