未来之窗仙盟创梦数据太虚

0.00

★20次@未来之窗

A:赛忞初雪

上架: 2025-09-16 16:11:54

         收藏
 

四方仙域传送阵         

未来之窗仙盟创梦数据太虚 - 说明书

未来之窗仙盟创梦数据太虚 类说明书

一、类概述

“未来之窗仙盟创梦数据太虚”是一个基于浏览器localStorage的前端数据管理类,主要用于实现数据的存储、加载、新增、更新、删除、查询等操作,支持基础条件查询与类SQL风格的高级查询,适用于前端轻量级数据管理场景(如小游戏、小型Web应用的本地数据存储)。

类核心特性:

  • 数据持久化:依托localStorage实现数据本地持久化,页面刷新后数据不丢失
  • 功能全面:覆盖数据CRUD(创建、读取、更新、删除)全流程
  • 灵活查询:支持多条件基础查询与中文/英文操作符的高级查询
  • 命名风格:采用“仙盟”“灵蕴阁”“神通”等国风命名,贴合“未来之窗仙盟”业务场景

二、核心概念说明

概念(类内属性/变量) 含义解释 作用
仙盟创梦数据太虚_STORAGE_PREFIX 数据存储前缀 拼接在localStorage的key前,避免不同业务数据key冲突,固定值为“未来之窗仙盟数据_”
神通 数据标识(自定义key) 实例化类时传入的参数,与前缀拼接后作为localStorage的最终key,用于区分不同数据集
灵蕴阁 数据存储容器 类内部的数组,加载localStorage数据后存储在此,所有CRUD操作均基于此数组

三、类方法详解

1. 构造函数(constructor)

功能:初始化数据管理实例,指定数据集标识并加载本地存储的对应数据。

语法

new 仙盟创梦数据太虚(神通);

参数

参数名 类型 说明 示例
神通 String 数据集的唯一标识,将与前缀拼接为localStorage的key "玩家信息"、"道具列表"

示例

// 初始化“玩家信息”数据集实例 const 玩家数据管理 = new 仙盟创梦数据太虚("玩家信息");

2. 加载数据(加载数据)

功能:从localStorage中读取当前数据集(神通对应的key)的内容,若数据不存在则返回空数组。

语法

实例.加载数据();
说明:类实例化时会自动调用此方法,无需手动调用;返回值为解析后的JSON数组(localStorage中存储的是JSON字符串,此方法会自动转为数组)。

3. 保存数据(保存)

功能:将当前灵蕴阁(数据容器)中的数据转为JSON字符串,存入localStorage对应key中,实现数据持久化。

语法

实例.保存();
说明:新增、更新、删除、清空等方法内部会自动调用此方法,无需手动调用;若需手动触发保存(如直接修改灵蕴阁后),可主动调用。

4. 新增数据(新增)

功能:向灵蕴阁数组中添加一条新数据,并自动保存到localStorage

语法

实例.新增(仙纪);

参数

参数名 类型 说明 示例
仙纪 Object 待新增的数据对象,需包含自定义字段(如ID、名称等) {玩家ID: 1001, 昵称: "仙尊", 等级: 50}

返回值:新增的仙纪数据对象

示例

// 向“玩家信息”数据集新增一条玩家数据 const 新玩家 = 玩家数据管理.新增({ 玩家ID: 1001, 昵称: "仙尊", 等级: 50, 门派: "青云门" }); console.log("新增的玩家数据:", 新玩家);

5. 更新数据(更新)

功能:根据指定条件匹配灵蕴阁中的数据,匹配成功后用新数据覆盖原数据,并自动保存。

语法

实例.更新(param1, value1, updatedItem, param2, value2);

参数

参数名 类型 说明 示例
param1 String 第一个匹配条件的字段名 "玩家ID"
value1 任意类型 第一个匹配条件的字段值 1001
updatedItem Object 更新后的完整数据对象(会覆盖原数据) {玩家ID: 1001, 昵称: "仙尊", 等级: 51, 门派: "青云门"}
param2(可选) String 第二个匹配条件的字段名(多条件匹配) "门派"
value2(可选) 任意类型 第二个匹配条件的字段值 "青云门"

返回值:更新后的数据对象(若未匹配到数据则返回undefined

示例

// 将“玩家ID=1001”的玩家等级更新为51 const 更新后玩家 = 玩家数据管理.更新( "玩家ID", 1001, {玩家ID: 1001, 昵称: "仙尊", 等级: 51, 门派: "青云门"} // 更新后的完整数据 ); console.log("更新后的玩家数据:", 更新后玩家);

6. 删除数据(删除)

功能:根据指定条件匹配灵蕴阁中的数据,匹配成功后删除该数据,并自动保存。

语法

实例.删除(param1, value1, param2, value2);

参数:同“更新数据”方法的参数

示例

// 删除“玩家ID=1001”的玩家数据 玩家数据管理.删除("玩家ID", 1001);

7. 读取单条数据(读取)

功能:根据指定条件匹配灵蕴阁中的数据,返回第一条匹配的数据(若多条匹配仅返回第一条)。

语法

实例.读取(param1, value1, param2, value2);

参数:同“删除数据”方法的参数

返回值:匹配到的第一条数据对象(若未匹配到则返回undefined

示例

// 读取“玩家ID=1001”的玩家数据 const 目标玩家 = 玩家数据管理.读取("玩家ID", 1001); console.log("读取到的玩家数据:", 目标玩家);

8. 读取多条数据(选择)

功能:根据指定条件匹配灵蕴阁中的数据,返回所有匹配的数据(数组形式)。

语法

实例.选择(param1, value1, param2, value2);

参数:同“删除数据”方法的参数

返回值:匹配到的所有数据组成的数组(若未匹配到则返回空数组)

示例

// 读取“门派=青云门”的所有玩家数据 const 青云门玩家列表 = 玩家数据管理.选择("门派", "青云门"); console.log("青云门玩家列表:", 青云门玩家列表);

9. 清空数据(清空)

功能:清空灵蕴阁数组,并删除localStorage

硬件app