前端(JavaScript)函数_数据操作类

文档概述

轻语言网站开发中的数据操作函数、用于处理数据读取和写入操作,包含JSON文件读取、XML文件读取、CSV文件读取、文本文件读取、文件下载等功能,常用于数据加载、文件处理、数据导入等场景。

  • 剪贴板操作复制文本(写入剪贴板) / 取剪贴板文本(读取剪贴板) 实现网页内复制粘贴功能
  • 文件读取(异步)读JSON文件 / 读XML文件 / 读CSV文件 / 读文本文件 均为异步操作,通过回调函数返回结果
  • XML解析解析XML文本 将 XML 字符串转为可操作的 DOM 对象,用 getElementsByTagName 取节点
  • 回调语法:使用箭头函数 (参数) => { ... } 作为回调,原生 JS 语法,轻语言支持直接使用

💡 异步读取注意:文件读取函数是异步执行的,数据只能在回调函数内部使用,不能在回调外访问。如需在外部使用,需用 保存配置 / 全局变量存储,或串联调用下一个操作。

函数:复制文本(待复制文本)

复制指定文本内容到系统剪贴板。代码示例:复制文本("需要复制的内容")

' 复制一段文本到剪贴板
复制文本("这是要复制的内容")
' 复制变量值到剪贴板
变量 用户名 = "张三"
变量 邮箱地址 = "example@example.com"
复制文本(用户名 + " 的邮箱是: " + 邮箱地址)

函数:取剪贴板文本(回调函数)

从系统剪贴板获取文本内容并通过回调函数返回,回调函数返回一个参数:(文本值)。代码示例:取剪贴板文本(回调函数)

' 获取剪贴板内容并在回调函数中处理
取剪贴板文本((文本值)=>{
	调试输出("剪贴板内容: " + 文本值)
})			
' 将剪贴板内容设置到编辑框中
取剪贴板文本((文本值)=>{
	编辑框1.文本 = 文本值
})

函数:解析XML文本(XML文本)

将XML格式的字符串解析为XML文档对象。

' 解析XML字符串
变量 XML字符串 = "<用户><姓名>张三</姓名><年龄>25</年龄></用户>"
变量 XML对象 = 解析XML文本(XML字符串)
' 获取XML中的值
' 注:getElementsByTagName("姓名")[0].textContent 为原生 JS DOM 操作语法,轻语言支持直接使用
变量 姓名 = XML对象.getElementsByTagName("姓名")[0].textContent
变量 年龄 = XML对象.getElementsByTagName("年龄")[0].textContent

函数:读JSON文件(文件路径, 回调函数, 是否解析为JSON对象)

异步读取JSON文件,通过回调函数返回结果,回调函数返回一个参数:(JSON对象或字符串),参数:是否解析为JSON对象、设置为真回调函数返回JSON对象、否则返回JSON字符串,该参数默认为假,可以省略。代码示例:读JSON文件("/data/config.json", 回调函数)

' 读取JSON文件并作为字符串处理
读JSON文件("/static/data/config.json", (数据)=>{
	调试输出("JSON内容: " + 数据)
})
' 读取JSON文件并解析为JSON对象
读JSON文件("/static/data/users.json", (数据)=>{
	' 数据已经是解析后的JSON对象,可直接操作对象中的属性
	调试输出("用户: " + 数据.用户)
	' 假设需要遍历JSON对象
	变量循环(i = 0, 取对象成员数(数据), 1)
		变量 成员名 = 取对象成员名(数据, i)
		调试输出("属性: " + 数据[成员名])
	结束循环
}, 真)

函数:读XML文件(文件路径, 回调函数)

异步读取XML文件,通过回调函数返回XML内容,回调函数返回一个参数:(XML字符串) 。代码示例:读XML文件("/data/config.xml", 回调函数)

' 读取XML文件
' 注:箭头函数 ()=>{} 为原生 JS 回调语法,轻语言支持直接使用
读XML文件("/static/data/config.xml", (XML内容)=>{
	调试输出("XML内容: " + XML内容)
	' 解析XML内容
	变量 XML文档 = 解析XML文本(XML内容)
	' 注:getElementsByTagName 为原生 JS DOM 方法,轻语言支持直接使用;可改用 取数组成员数(XML文档.getElementsByTagName("*"))
	变量 节点数 = 取数组成员数(XML文档.getElementsByTagName("*"))
	调试输出("XML节点数: " + 节点数)
})

函数:读CSV文件(文件路径, 回调函数)

异步读取CSV文件,通过回调函数返回解析后的二维数组。

' 读取并处理CSV文件
读CSV文件("/static/data/users.csv", (数据)=>{
	' 数据是一个二维数组,[行,列]
	调试输出("CSV数据:" + 数据)
	' 遍历数据并输出
	变量循环(i = 0, 取数组成员数(数据), 1)
		变量 行 = 数据[i]
		调试输出("第" + (i+1) + "行数据:")
		变量 列数据 = ""
		变量循环(j = 0, 取数组成员数(行), 1)
			列数据 = 列数据 + 行[j] + ","
		结束循环
		调试输出(列数据)
	结束循环
})

函数:读文本文件(文件路径, 回调函数)

异步读取文本文件,通过回调函数返回文件内容,回调函数返回一个参数:(文本内容) 。

' 读取文本文件内容
读文本文件("/static/docs/readme.txt", (内容)=>{
	调试输出("文件内容:")
	调试输出(内容)
})
' 将文本文件内容显示到指定标签中
读文本文件("/static/docs/license.txt", (内容)=>{
	标签1.文本 = 内容
})

学习要点

知识点代码示例说明
剪贴板写入复制文本("内容")同步操作,直接写入系统剪贴板
剪贴板读取取剪贴板文本((文本值)=>{ ... })异步操作,需通过回调函数获取内容;不能直接返回值
箭头函数回调(数据) => { ... }原生 JS 回调语法,轻语言支持直接使用;异步函数的标配
XML解析解析XML文本(XML字符串)返回 XML DOM 对象,用 getElementsByTagName 取节点
DOM节点访问XML对象.getElementsByTagName("姓名")[0].textContent原生 JS DOM 语法,轻语言支持直接使用;[0] 取首个,.textContent 取文本
异步读取JSON读JSON文件(路径, 回调, 真)第三参数 真=返回对象、假=返回字符串;默认假,可省略
异步读取CSV读CSV文件(路径, 回调)返回二维数组 [行][列],用 取数组成员(数据, i) 访问行
异步嵌套循环变量循环(i, 取数组成员数(数据), 1) 内嵌 变量循环(j, 取数组成员数(行), 1)遍历二维数组的标准写法,注意内外层循环变量不同
对象遍历取对象成员数(数据) + 取对象成员名(数据, i)遍历 JSON 对象的所有属性,用 对象[成员名] 取值

相关文档

  • 文档前端(JavaScript)函数_对象操作 —— 取对象成员数取对象成员名 对象遍历函数
  • 文档前端(JavaScript)函数_数组操作 —— 取数组成员取数组成员数 数组遍历函数
  • 文档前端(JavaScript)函数_数据转换类 —— JSON编码JSON解析 数据序列化函数
  • 文档前端(JavaScript)函数_储存类 —— 异步读取后用 保存配置 持久化存储数据
  • 文档前端(JavaScript)函数_网络操作类 —— 访问接口ByPOST 等网络请求函数