Javascript
(73)js 浮点数精度问题
js 中使用 float 浮点数类型,会发现运算时结果表示出人意料
## 问题现象
```
2.4 - 2.25
> 0.1499999999999999
0.1 + 0.2
> 0.30000000000000004
JS 给长串数字添加逗号分隔符
例如,我想用 js 实现将数字 1000,显示成
> 1,000
的格式。
## 实现方法
```
let x = 100000000000000;
x.toString().replace(/\B(?=(\d{
Javascript Array Buffer 与字符串相互转换
由于要跟蓝牙设备交互,在传递浮点数时,想用 ascii 进行编码。
问题来了,22.22 这样的浮点数,用 ascii 码表示时,如何进行 array buffer 与 string 的相互转换。
## 解析数据实现代码
Javascript 处理二机制 bit 位
返回的数据是一个字节,即 8 bit 位,每一个 bit 代表一个设备状态的开启与否。
即 8 个不同设备的开启状态。
如何用 Javascript 来解析二机制状态位呢?
## 开关作用
可以通过 dataView.g
JS 将日期时间字符串转换成包含 TZ 的 UTC 时间
我想将小程序中获取到的日期和时间,转换成 UTC 时间,格式如:
> 2021-12-25T08:08:08Z
好方便传输给后台,进行 InfluxDB 时间区间过滤。
## 转换方法
先拼接成不加 Z 结尾的字符串
node module 包名以 @ 符号为前缀是什么意思
例如在一段 Ant Design Pro V5 的代码中看到:
```
import { Button, message, Input, Drawer } from 'antd';
import React, { useState
使用 async / await 实现 setTimeout 的同步写法
在 tampermonkey 的很多实际使用场景中,需要在模拟点击之后,等待界面变化,或者数据返回,此时就需要用到 setTimeout。但是如果是一系列的点击等待,就需要进行 setTimeout 嵌套,或者 setTimeout 时间进
querySelectorAll 通过页面按钮的文本内容来选择相应标签
由于 58 同城的开放平台申请接口权限一直处于审核中,而想要用的一个接口没有使用文档,也无法联系到人类客服询问,只能采取浏览器插件的方式做数据导出。
58同城管理后台为了防爬虫,做了诸多的防爬策略,其中一种就是没有明确的 class
js 获取页面内 ID 重复的多个节点
由于网页 HTML 写的不规范,存在大量的重复 ID 节点。使用 jQuery 只能获取第一个匹配的 ID。
用纯 Javascript 和 jQuery 测试了一下,结果如下:
## 可行的方法
```
> documen
js 三元表达式的简写形式
在微信小程序的 wxml 模板里写三元表达式写吐了,满眼都是这种逻辑:
```
```
查了一下 js 里确实存在简写形式:
```
```
> expr1 || expr2 若 expr1 可转换为 t