记录-随机数常见的几种随机数 一.常规随机数 Math.random() 二.更安全或可控的随机数 crypto.getRandomValues() crypto.randomUUID() 三.伪随机 基于 Date.now() 的随机 四.第三方库 Lodash: _.random(min, max) Chance.js: 生成随机数、随机名字、随机句子 UUID 库: uuid.v4() 一.常规随机数1.Math.random()📖Math 生成一个 [0, 1) 之间的浮点数。 常用于前端大多数场景,比如抽奖、随机颜色、随机数组索引。 12const number = Math.random();console.log(number); // 0.4833704909409956 常用于: 结合范围取整(利用 .floor、Math.ceil、Math.round) 123456789// 生成 [min, max) 的随机整数function getRandomInt(min, max) { return Math.floor(Ma ...
记录-颜色方面一.颜色表示方式 关键字:(red, blue, transparent…) 十六进制表示 (Hex)【#RGB, #RRGGBB, #RGBA, #RRGGBBAA】 RGB / RGBA【rgb(r, g, b),rgba(r, g, b, a)】 HSL / HSLA【hsl(h, s, l),hsla(h, s, l, a)】 1.关键字 内置颜色名:red, blue, green, black, white, orange, pink, violet … 特殊关键字: transparent:等价于rgba(0,0,0,0) 2.HEX 十六进制: #RGB —> #f00 , 123color: #3498db;color: #fff; /* 白色缩写 */color: #ff000080; /* 半透明红色 */ 3.RGB/RGBA 📖 rgb() 参数可以是0~255 百分比 none 之间可以使用逗号或者不用逗号分隔开来 除了逗号分隔的旧版语法中不可以数字与百分比 ...
系统且详细地讲解 BEM 架构:从背景、核心思想、命名规则、使用方法、优缺点,到实际项目中的最佳实践。 一、BEM 是什么?BEM 是 Block(块)、Element(元素)、Modifier(修饰符)的缩写,是一种前端 CSS 命名方法论,用于让你的 CSS: 更清晰(语义清楚) 更模块化(组件独立) 更易维护(避免样式冲突) BEM 最早由俄罗斯的 Yandex 公司提出,用于构建大型的、可维护的用户界面。 二、为什么需要 BEM?传统 CSS 存在以下问题: 样式难以复用,组件耦合严重 命名混乱、容易冲突(比如 .title 在很多组件里都有) 样式覆盖混乱(选择器优先级、继承乱套) BEM 的出现就是为了解决这些问题,通过结构化命名、组件式思维来组织样式。 三、BEM 的核心概念详解1. Block(块) 描述一个独立功能的组件或模块。 可以单独使用,具有自己的语义、样式。 示例:menu、form、button、header、modal。 1<div class="menu"></div> 2. Elemen ...
TypeScript
未读TypeScript 快速上手🪩 禹神:三小时快速上手TypeScript,TS速通教程_哔哩哔哩_bilibili ⼀、TypeScript 简介 TypeScript 由微软开发,是基于 JavaScript 的⼀个扩展语⾔。 TypeScript 包含了 JavaScript 的所有内容,即: TypeScript 是 JavaScrip t 的超集。![[|附件|/Typora 2025-01-07 11.53.14.png|200]] TypeScript 增加了:静态类型检查、接⼝、 泛型等很多现代开发特性,更适合⼤型项⽬ 的开发。 TypeScript 需要编译为 JavaScript ,然后交给浏览器或其他 JavaScript 运⾏环 境执⾏。 ⼆、为何需要 TypeScript1.今⾮昔⽐的 JavaScript(了解) JavaScript 当年诞⽣时的定位是浏览器脚本语⾔,⽤于在⽹⻚中嵌⼊简单的逻辑,且代码 量很少。 随着时间的推移,JavaScript 变得越来越流⾏,如今的 JavaScript 已经可以全栈编程 了。 ...
TypeScript-枚举枚举枚举是 TypeScript 中一个重要的概念,它可以帮助我们定义一组命名常量,并为每个常量赋予一个数值。枚举可以让我们更方便地管理代码中的常量,并减少代码中的魔法数字。 TypeScript 中的枚举语法如下: 1enum Color {Red, Green, Blue} 上面的代码定义了一个名为 Color 的枚举,它包含三个常量 Red、Green 和 Blue,每个常量都被赋予一个数值,默认情况下,数值从 0 开始递增。 我们可以像这样使用枚举: 12let color: Color = Color.Red;console.log(color); // 0 上面的代码声明了一个变量 color,它的类型是 Color,并赋值为 Color.Red。由于 Color.Red 的值是 0,因此 color 的值为 0。 我们也可以通过枚举的属性来访问枚举中的值: 123console.log(Color.Red); // 0console.log(Color.Green); // 1console.log(Color.Blue) ...
C/C++
未读#include <fstream> 是 C++ 中用于进行文件输入输出(I/O)操作的标准头文件,它提供了对文件读写的支持,主要包括三个类: 一、<fstream> 中的三个主要类 类名 功能 继承自 ifstream 用于读取文件 istream ofstream 用于写入文件 ostream fstream 用于读写文件 iostream 二、常用方法详解1. 文件打开方式(可用作 open() 第二个参数) 模式名 含义 ios::in 以读模式打开 ios::out 以写模式打开(默认覆盖) ios::app 追加写入到文件末尾 ios::ate 打开文件并移动到文件尾部 ios::trunc 如果文件存在,清空内容 ios::binary 以二进制模式打开 可以用 | 组合多种模式,例如:ios::in | ios::out 2. 常用成员函数 函数 说明 open(filename, mode) 打开文件 is_open() 检查文件是否成功打开 close( ...
一、list 概述 来自头文件:#include <list> 类型:双向链表容器 特点: 插入/删除操作高效(尤其是中间插入/删除) 不支持随机访问(不能使用 []) 支持迭代器(双向迭代器) 可存储任意类型元素(包括自定义类型) 二、创建与初始化1234567891011121314151617#include <list>using namespace std;// 空 listlist<int> a;// 指定大小(值为默认0)list<int> b(5);// 指定大小与初始值list<int> c(3, 10); // [10, 10, 10]// 初始化列表list<int> d = {1, 2, 3, 4};// 拷贝构造list<int> e(d); 三、常用成员函数与方法分类总览1️⃣ 访问元素 函数 说明 front() 获取第一个元素 back() 获取最后一个元素 123list<int> l = ...
#include <arpa/inet.h><arpa/inet.h> 是 网络编程 核心头文件,提供 IP 地址转换 和 字节序处理 功能,主要用于 IPv4/IPv6 套接字编程(Socket Programming)。 1. 核心功能 功能 关键函数/宏 用途 IP 地址转换 inet_aton(), inet_addr(), inet_ntoa() IPv4 字符串 ↔ 二进制转换 现代 IP 转换 inet_pton(), inet_ntop() 支持 IPv4/IPv6 的可移植转换 字节序转换 htons(), htonl(), ntohs(), ntohl() 主机字节序 ↔ 网络字节序(大端序) 2. 详细函数解析2.1 IP 地址转换(IPv4)(1) inet_aton() - 字符串 → 二进制(推荐)1int inet_aton(const char *cp, struct in_addr *inp); 功能:将点分十进制 IPv4 地址(如 "192.16 ...
#include <sys/stat.h><sys/stat.h> 是 Unix/Linux 系统编程中用于 文件元数据操作 的核心头文件,提供了 文件属性检查、权限管理、文件创建 等功能。 1. 核心功能 功能 关键函数/宏 用途 文件信息获取 stat(), fstat(), lstat() 获取文件元数据 文件权限检查 S_ISDIR(), S_ISREG() 等宏 判断文件类型 权限位操作 S_IRUSR, S_IWGRP 等宏 设置/检查文件权限 文件创建 mkdir(), mkfifo() 创建目录或命名管道 文件模式修改 chmod(), fchmod() 修改文件权限 2. 详细函数解析2.1 文件信息获取(1) stat() - 通过路径获取文件信息1int stat(const char *pathname, struct stat *statbuf); 功能:获取文件元数据(如大小、权限、时间戳)。 示例: 12345678910#include <sys ...
#include <pthread.h><pthread.h> 是 POSIX 线程(Pthreads) 的标准头文件,用于 多线程编程。它提供了创建、同步和管理线程的函数,是 Linux/Unix 系统下多线程开发的核心库。 1. 核心功能 功能 关键函数 用途 线程创建 pthread_create() 创建新线程 线程终止 pthread_exit(), pthread_cancel() 终止当前线程或指定线程 线程同步 pthread_mutex_*, pthread_cond_* 互斥锁、条件变量 线程连接 pthread_join() 等待线程结束并获取返回值 线程属性 pthread_attr_* 设置线程属性(如栈大小、分离状态) 2. 详细函数解析2.1 线程创建与管理(1) pthread_create() - 创建线程12int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void ...








