From 32e7542e927afaac0d77c6ff6c9aefc1a7c010ec Mon Sep 17 00:00:00 2001 From: yp9522 Date: Tue, 27 May 2025 12:20:53 +0800 Subject: [PATCH] =?UTF-8?q?fix=20arkt=20api=E6=96=87=E6=A1=A3=E6=95=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: yp9522 --- .../apis-arkts/js-apis-arkts-collections.md | 14 ++--- .../apis-arkts/js-apis-arkts-decimal.md | 55 +++++++++++++++---- .../apis-arkts/js-apis-arkts-utils.md | 4 +- .../apis-arkts/js-apis-convertxml.md | 4 +- .../reference/apis-arkts/js-apis-json.md | 4 +- .../reference/apis-arkts/js-apis-process.md | 4 +- .../reference/apis-arkts/js-apis-taskpool.md | 10 ++-- .../reference/apis-arkts/js-apis-uri.md | 18 +++--- .../reference/apis-arkts/js-apis-url.md | 14 +++-- .../reference/apis-arkts/js-apis-util.md | 16 ++++-- .../reference/apis-arkts/js-apis-worker.md | 16 +++--- .../reference/apis-arkts/js-apis-xml.md | 3 +- .../reference/common/_j_s_v_m.md | 2 +- 13 files changed, 101 insertions(+), 63 deletions(-) diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-collections.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-collections.md index 6eadb958d63..4a45776c9a0 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-collections.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-collections.md @@ -4,7 +4,7 @@ ArkTS容器在多个并发实例间传递时,其默认行为是引用传递,支持多个并发实例可以同时操作同一个容器实例。另外,也支持拷贝传递,即每个并发实例持有一个ArkTS容器实例。 -ArkTS容器并不是线程安全的,内部使用了fail-fast(快速失败)机制:当检测多个并发实例同时对容器进行结构性改变时,会触发异常。因此,在修改场景下,容器使用方需要使用ArkTS提供的异步锁机制保证ArkTS容器的安全访问。 +ArkTS容器并不是线程安全的,内部使用了fail-fast(快速失败)机制:当检测到多个并发实例同时对同一个容器进行结构性改变时,会触发异常。因此,在有修改的场景下,容器使用方需要使用ArkTS提供的异步锁机制保证ArkTS容器的安全访问。 当前ArkTS容器集主要包含以下几种容器:[Array](#collectionsarray)、[Map](#collectionsmap)、[Set](#collectionsset)、[TypedArray](#collectionstypedarray)、[ArrayBuffer](#collectionsarraybuffer)、[BitVector](#collectionsbitvector)、[ConcatArray](#collectionsconcatarray)。 @@ -162,7 +162,7 @@ let slicedArray = concatArray.slice(1, 3); // 返回[2, 3],原Array保持不 ## ArrayFromMapFn18+ type ArrayFromMapFn = (value: FromElementType, index: number) => ToElementType -ArkTS Array归约函数类型,被Array类的'from' 接口使用。 +ArkTS Array归约函数类型,在Array类的'from' 接口使用。 **系统能力:** SystemCapability.Utils.Lang @@ -184,7 +184,7 @@ ArkTS Array归约函数类型,被Array类的'from' 接口使用。 ## ArrayPredicateFn18+ type ArrayPredicateFn = (value: ElementType, index: number, array: ArrayType) => boolean -ArkTS Array归约函数类型,被Array类的'some'和'every'接口使用,用来判断数组元素是否满足测试条件。 +ArkTS Array归约函数类型,在Array类的'some'和'every'接口使用,用来判断数组元素是否满足测试条件。 **系统能力:** SystemCapability.Utils.Lang @@ -256,7 +256,7 @@ ArkTS Array归约函数类型,被Array类的'reduceRight'接口使用。 constructor() -创建一个ArkTS Array的构造函数。 +ArkTS Array的构造函数。 **原子化服务API**:从API version 12 开始,该接口支持在原子化服务中使用。 @@ -343,7 +343,7 @@ let array = new collections.Array(...arrayPara); static create\(arrayLength: number, initialValue: T): Array\ -生成一个固定长度的Array,其中,每个元素的初始值为initialValue。 +生成一个固定长度的Array,其中,每个元素的值为initialValue。 **原子化服务API**:从API version 12 开始,该接口支持在原子化服务中使用。 @@ -471,7 +471,7 @@ console.info(newArray.toString()); static from\(arrayLike: ArrayLike\ | Iterable\, mapFn: ArrayFromMapFn\): Array\ -从一个实现了ArrayLike接口的对象创建一个新的ArkTS Array,并且使用自定义函数处理每个数组元素。 +从一个实现了ArrayLike接口或Iterable接口的对象创建一个新的ArkTS Array,并且使用自定义函数处理每个数组元素。 **原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。 @@ -512,7 +512,7 @@ console.info(newarray.toString()); static from\(arrayLike: ArrayLike\ | Iterable\, mapFn: ArrayFromMapFn\): Array\ -从一个实现了ArrayLike接口的对象创建一个新的ArkTS Array,并且使用自定义函数处理每个数组元素,ArrayLike接口对象的元素类型可以数组元素的类型不一样。 +从一个实现了ArrayLike接口或Iterable接口的对象创建一个新的ArkTS Array,并且使用自定义函数处理每个数组元素,ArrayLike接口对象的元素类型可以数组元素的类型不一样。 **原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-decimal.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-decimal.md index 229c148959e..2889b7c3933 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-decimal.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-decimal.md @@ -71,7 +71,7 @@ type Modulo = Rounding | 9 | 类型 | 说明 | | ---------------------- | ------------------------------------------------------------ | | [Rounding](#rounding) | 模运算下的舍入类型。与[Rounding](#常量)表示的舍入模式相同。 | -| 9 | 余模运算下,余数始终为正。欧几里得除法。与[Decimal.EUCLIDEAN](#常量)一致。 | +| 9 | 余模运算下,余数始终为正。欧几里得除法,与[Decimal.EUCLID](#常量)一致。 | ## DecimalConfig @@ -288,8 +288,14 @@ clamp(min: Value, max: Value): Decimal **示例:** ```ts -let data: Decimal = new Decimal(10.1).clamp(0, 10); -console.info("test Decimal clamp:" + data.toString()); // 'test Decimal clamp:10' +let data1: Decimal = new Decimal(10.1).clamp(0, 10); +console.info("test Decimal clamp:" + data1.toString()); // 'test Decimal clamp:10' + +let data2: Decimal = new Decimal(-5).clamp(0, 10); +console.info("test Decimal clamp:" + data2.toString()); // 'test Decimal clamp:0' + +let data3: Decimal = new Decimal(7.5).clamp(0, 10); +console.info("test Decimal clamp:" + data3.toString()); // 'test Decimal clamp:7.5' ``` @@ -616,7 +622,7 @@ console.info("test Decimal exp:" + data.toString()); // 'test Decimal exp:7.3890 log(n: Value): Decimal -返回一个以n为底的指定对数运算的Decimal对象。 +返回一个对数运算后的Decimal对象,其值是以n为底的对数值。 使用[DecimalConfig.precision](#decimalconfig)的值进行有效数字的保留,使用[DecimalConfig.rounding](#decimalconfig)的值设置舍入模式。 @@ -1023,7 +1029,7 @@ Decimal的比较方法。 | 参数名 | 类型 | 必填 | 说明 | | ------ | --------------- | ---- | --------------------- | -| n | [Value](#value) | 是 | 待比较的值或Decimal。 | +| n | [Value](#value) | 是 | 待比较的值。 | **返回值:** @@ -1065,7 +1071,7 @@ equals(n: Value): boolean | 参数名 | 类型 | 必填 | 说明 | | ------ | --------------- | ---- | --------------------- | -| n | [Value](#value) | 是 | 待比较的值或Decimal。 | +| n | [Value](#value) | 是 | 待比较的值。 | **返回值:** @@ -1103,7 +1109,7 @@ greaterThan(n: Value): boolean | 参数名 | 类型 | 必填 | 说明 | | ------ | --------------- | ---- | --------------------- | -| n | [Value](#value) | 是 | 待比较的值或Decimal。 | +| n | [Value](#value) | 是 | 待比较的值。 | **返回值:** @@ -1141,7 +1147,7 @@ greaterThanOrEqualTo(n: Value): boolean | 参数名 | 类型 | 必填 | 说明 | | ------ | --------------- | ---- | --------------------- | -| n | [Value](#value) | 是 | 待比较的值或Decimal。 | +| n | [Value](#value) | 是 | 待比较的值。 | **返回值:** @@ -1179,7 +1185,7 @@ lessThan(n: Value): boolean | 参数名 | 类型 | 必填 | 说明 | | ------ | --------------- | ---- | --------------------- | -| n | [Value](#value) | 是 | 待比较的值或Decimal。 | +| n | [Value](#value) | 是 | 待比较的值。 | **返回值:** @@ -1217,7 +1223,7 @@ lessThanOrEqualTo(n: Value): boolean | 参数名 | 类型 | 必填 | 说明 | | ------ | --------------- | ---- | --------------------- | -| n | [Value](#value) | 是 | 待比较的值或Decimal。 | +| n | [Value](#value) | 是 | 待比较的值。 | **返回值:** @@ -4084,8 +4090,33 @@ static sign(n: Value): number **示例:** ```ts -let data: number = Decimal.sign(2); -console.info("test Decimal sign:" + data); // 'test Decimal sign:1' +let data1: number = Decimal.sign(2); +console.info("test Decimal sign:" + data1); // 'test Decimal sign:1' + +let data2: number = Decimal.sign(-3); +console.info("test Decimal sign:" + data2); // 'test Decimal sign:-1' + +let data3: number = Decimal.sign(0); +console.info("test Decimal sign:" + data3); // 'test Decimal sign:0' + +let data4: number = Decimal.sign(-0); +console.info("test Decimal sign:" + data4); // 'test Decimal sign:0' + +let data5: number = Decimal.sign(3.14); +console.info("test Decimal sign:" + data5); // 'test Decimal sign:1' + +let data6: number = Decimal.sign(-1.618); +console.info("test Decimal sign:" + data6); // 'test Decimal sign:-1' + +let data7: number = Decimal.sign("100"); +console.info("test Decimal sign:" + data7); // 'test Decimal sign:1' + +let data8: number = Decimal.sign("-50"); +console.info("test Decimal sign:" + data8); // 'test Decimal sign:-1' + +let data9: number = Decimal.sign(NaN); +console.info("test Decimal sign:" + data9); // 'test Decimal sign:NaN' + ``` ### round diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-utils.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-utils.md index 1fded52dc18..ed9242bbbd7 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-utils.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-arkts-utils.md @@ -199,7 +199,7 @@ static queryAll(): AsyncLockState[] | 类型 | 说明 | | ----------------------------------- | -------------------------------- | -| [AsyncLockState](#asynclockstate)[] | 包含锁状态信息的异步锁状态数组。 | +| [AsyncLockState](#asynclockstate)[] | 包含状态描述的异步锁状态实例数组。 | **示例:** @@ -517,7 +517,7 @@ static request(name: string): ConditionVariable | 类型 | 说明 | | ----------------------- | -------------------------------- | -| [ConditionVariable](#conditionvariable18) | 返回查找到或创建后的异步等待通知操作的实例。 | +| [ConditionVariable](#conditionvariable18) | 返回查找或创建(如果未找到)的异步等待通知操作的实例。 | **示例:** diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-convertxml.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-convertxml.md index 1b2f24b1b0a..5a8941ef53d 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-convertxml.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-convertxml.md @@ -19,7 +19,7 @@ import { convertxml } from '@kit.ArkTS'; fastConvertToJSObject(xml: string, options?: ConvertOptions) : Object -转换xml文本为JavaScript对象。 +转换xml文本为Object类型对象。 > **说明:** > @@ -82,7 +82,7 @@ try { convertToJSObject(xml: string, options?: ConvertOptions) : Object -转换xml文本为JavaScript对象。 +转换xml文本为Object类型对象。 > **说明:** > diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-json.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-json.md index f14c78f0dad..1e6f10339c0 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-json.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-json.md @@ -394,7 +394,7 @@ console.info(result2); // "10.00" has(obj: object, property: string): boolean -检查ArkTS对象是否包含某种属性,可用于[JSON.parse](#jsonparse)解析JSON字符串之后的相关操作。has接口仅支持最外层为字典形式(即大括号而非中括号包围)的合法json串。 +检查ArkTS对象是否包含某种属性,可用于[JSON.parse](#jsonparse)解析JSON字符串之后。has接口仅支持最外层为字典形式(即大括号而非中括号包围)的合法json串。 **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 @@ -438,7 +438,7 @@ console.info("result = " + result); remove(obj: object, property: string): void -从ArkTS对象中删除某种属性,可用于[JSON.parse](#jsonparse)解析JSON字符串之后的相关操作。remove接口仅支持最外层为字典形式(即大括号而非中括号包围)的合法json串。 +从ArkTS对象中删除某种属性,可用于[JSON.parse](#jsonparse)解析JSON字符串之后的相关操作。JSON.remove接口仅支持最外层为字典形式(即大括号而非中括号包围)的合法json串。 **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-process.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-process.md index 7b9faffda88..58db3c5c2ce 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-process.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-process.md @@ -93,7 +93,7 @@ let result = process.is64Bit(); getStartRealtime(): number -获取系统启动到进程启动的实时时间(以毫秒为单位)。 +获取系统启动到进程启动的实时时间(以毫秒为单位,不包含系统休眠时间)。 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 @@ -634,7 +634,7 @@ pro.exit(0); kill(signal: number, pid: number): boolean -发送signal到指定的进程,结束指定进程。 +发送signal到指定的进程,结束指定进程(仅支持结束本进程)。 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-taskpool.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-taskpool.md index 7a760961715..2a0a0f478db 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-taskpool.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-taskpool.md @@ -198,7 +198,7 @@ taskpool.execute(task3, taskpool.Priority.HIGH).then((value: Object) => { execute, R>(task: GenericsTask, priority?: Priority): Promise\ -校验并发函数的参数类型和返回类型后,将创建好的泛型任务放入taskpool内部任务队列。 +校验并发函数的参数类型和返回类型后,将创建好的泛型任务放入taskpool内部任务队列,任务不会立即执行,而是等待分发到工作线程执行。 **系统能力:** SystemCapability.Utils.Lang @@ -257,7 +257,7 @@ taskpool.execute<[number], number>(task3, taskpool.Priority.HIGH).then((value: n execute(group: TaskGroup, priority?: Priority): Promise -将创建好的任务组放入taskpool内部任务队列,任务组中的任务不会立即执行,而是等待分发到工作线程执行。任务组中任务全部执行完成后,结果数组统一返回。当前执行模式适用于执行一组有关联的任务。 +将创建好的[任务组](#taskgroup10)放入taskpool内部任务队列,任务组中的任务不会立即执行,而是等待分发到工作线程执行。任务组中任务全部执行完成后,结果数组统一返回。当前执行模式适用于执行一组有关联的任务。 **系统能力:** SystemCapability.Utils.Lang @@ -433,7 +433,7 @@ taskpool.executeDelayed<[number], string>(1000, task).then((res: string) => { // executePeriodically(period: number, task: Task, priority?: Priority): void -周期执行任务每隔period时长执行一次。当前执行模式支持设置任务优先级,并可以通过调用cancel取消任务周期执行。周期任务不能是任务组任务、串行队列任务或异步队列任务,不能再次调用执行接口,且不能拥有依赖关系。 +周期执行任务,每隔period时长执行一次。当前执行模式支持设置任务优先级,并可以通过调用cancel取消任务周期执行。周期任务不能是任务组任务、串行队列任务或异步队列任务,不能再次调用执行接口,且执行的任务不能拥有依赖关系。 **系统能力:** SystemCapability.Utils.Lang @@ -585,7 +585,7 @@ taskpoolTest(); cancel(task: Task): void -取消任务池中的任务。当任务在taskpool等待队列中,取消该任务后该任务将不再执行,并返回任务被取消的异常;当任务已经在taskpool工作线程执行,取消该任务并不影响任务继续执行,执行结果在catch分支返回,搭配isCanceled使用可以对任务取消行为作出响应。taskpool.cancel对其之前的taskpool.execute/taskpool.executeDelayed生效。 +取消任务池中的任务。当任务在taskpool等待队列中,取消该任务后该任务将不再执行,并返回任务被取消的异常;当任务已经在taskpool工作线程执行,取消该任务并不影响任务继续执行,执行结果在catch分支返回,搭配isCanceled使用可以对任务取消行为作出响应。taskpool.cancel对其之前的taskpool.execute/taskpool.executeDelayed/taskpool.executePeriodically生效。 从API version 20开始,支持在执行cancel操作后,在catch分支里使用BusinessError<[taskpool.TaskResult](#taskresult20)>的泛型标记,来获取任务中抛出的异常信息或最终的执行结果。 @@ -728,7 +728,7 @@ concurrentFunc(); cancel(taskId: number): void -通过任务ID取消任务池中的任务。当任务在taskpool等待队列中,取消该任务后该任务将不再执行,并返回任务被取消的异常;当任务已经在taskpool工作线程执行,取消该任务并不影响任务继续执行,执行结果在catch分支返回,搭配isCanceled使用可以对任务取消行为作出响应。taskpool.cancel对其之前的taskpool.execute/taskpool.executeDelayed生效。在其他线程调用taskpool.cancel时需要注意,因为cancel的行为是异步的,可能对之后的taskpool.execute/taskpool.executeDelayed生效。 +通过任务ID取消任务池中的任务。当任务在taskpool等待队列中,取消该任务后该任务将不再执行,并返回任务被取消的异常;当任务已经在taskpool工作线程执行,取消该任务并不影响任务继续执行,执行结果在catch分支返回,搭配isCanceled使用可以对任务取消行为作出响应。taskpool.cancel对其之前的taskpool.execute/taskpool.executeDelayed/taskpool.executePeriodically生效。在其他线程调用taskpool.cancel时需要注意,因为cancel的行为是异步的,可能对之后的taskpool.execute/taskpool.executeDelayed生效。 从API version 20开始,支持在执行cancel操作后,在catch分支里使用BusinessError<[taskpool.TaskResult](#taskresult20)>的泛型标记,来获取任务中抛出的异常信息或最终的执行结果。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-uri.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-uri.md index f3c5655b4b3..9f741c998a8 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-uri.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-uri.md @@ -1,6 +1,6 @@ # @ohos.uri (URI字符串解析) -本模块提供URI字符串解析功能。URI遵循RFC3986规范标准,该标准定义了如何编码和解析用于定位网络资源的标识符,对于非标准场景解析不支持。 +本模块提供URI字符串解析功能。URI遵循RFC3986规范标准,该规范定义了编码和解析网络资源标识符的方法,不支持非标准场景解析。 > **说明:** > @@ -15,7 +15,7 @@ import { uri } from '@kit.ArkTS'; ## URI -构造URI对象,提供判断对象相等、规范路径等方法。 +构造一个URI对象,并提供判断两个URI是否相等、对URI路径部分进行编码规范化等方法。 ### 属性 @@ -231,7 +231,7 @@ let result = uriInstance.equalsTo(uriInstance1); // true checkIsAbsolute(): boolean -判断此URI是否为绝对URI(是否定义了scheme组件)。 +判断URI是否为绝对URI,即是否包含scheme组件。 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 @@ -349,7 +349,7 @@ console.info(`${uriInstance1.checkOpaque()}`); // true checkHierarchical(): boolean -判断此URI是否为分层URI,方案特定部分以“/”开头的URI为分层的URI。相对URI也是分层的。 +判断此URI是否为分层的URI,方案特定部分以“/”开头的URI为分层的URI。相对URI也是分层的。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -416,7 +416,7 @@ console.info(uriInstance1.getQueryValue('abc')) // null addQueryValue(key:string, value:string): URI -在当前URI对象上添加查询参数后返回新对象,保持原有URI对象不变。 +在当前URI对象上添加查询参数后返回新的URI对象,保持原有URI对象不变。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -455,7 +455,7 @@ console.info(newRoute.toString()); // https://www.test.com?param1=hello%20world addSegment(pathSegment:string): URI -对指定字段进行编码,并将其追加到当前URI的path中,创建并返回新的URI,保持原有URI对象不变。 +对指定字段进行编码,并将其追加到当前URI对象的path中,创建并返回新的URI对象,保持原有URI对象不变。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -493,7 +493,7 @@ console.info(newRoute.toString()); // http://www.test.com/my%20image.jpg addEncodedSegment(pathSegment:string): URI -将已编码的字段追加到当前URI的path字段中,创建新URI并返回,保持原有URI对象不变。 +将已编码的字段追加到当前URI的path字段中,创建新URI对象并返回,保持原有URI对象不变。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -641,7 +641,7 @@ console.info(`${uriInstance4.getBooleanQueryValue("active", true)}`); // true clearQuery(): URI -清除URI路径查询部分,并创建一个新的URI返回,同时保持原有URI对象不变。 +清除URI路径查询部分,并创建一个新的URI对象返回,同时保持原有URI对象不变。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -710,7 +710,7 @@ console.info(uriInstance.getSegment().toString()); // path,to,image.jpg createFromParts(scheme: string, ssp: string, fragment: string): URI -根据提供的协议、方案以及片段创建一个新的URI。 +根据提供的协议、方案以及片段创建一个新的URI对象。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-url.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-url.md index 8b5f0a1ecf7..25249ea62c6 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-url.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-url.md @@ -13,7 +13,7 @@ import { url } from '@kit.ArkTS'; ``` ## URLParams9+ -URLParams接口定义了一些处理URL查询字符串的实用方法。 +URLParams是一个用于解析、构造和操作URL参数的实用类。该类提供了统一的接口来处理参数维度(如查询参数、路径参数等)。 ### constructor9+ @@ -168,7 +168,7 @@ console.log(params.getAll('fod').toString()) // Output ["1","3"]. entries(): IterableIterator<[string, string]> -返回一个ES6的迭代器,迭代器的每一项都是一个JavaScript Array。Array的第一项是name,Array的第二项是value。 +返回一个ES6的迭代器,迭代器的每一项都是一个Array。Array的第一项是name,Array的第二项是value。 **原子化服务API**:从API version 11开始,该接口支持在原子化服务中使用。 @@ -323,7 +323,9 @@ let result = paramsObject.has('bard'); set(name: string, value: string): void -将与name关联的URLSearchParams对象中的值设置为value。如果存在名称为name的键值对,请将第一个键值对的值设置为value并删除所有其他值。如果不是,则将键值对附加到查询字符串。 +将与name关联的URLSearchParams对象中的值设置为value。 + +如果存在名称为name的键值对,请将第一个键值对的值设置为value并删除所有其他值。如果不是,则将键值对附加到查询字符串。 **原子化服务API**:从API version 11开始,该接口支持在原子化服务中使用。 @@ -430,7 +432,7 @@ for (let value of values) { [Symbol.iterator]\(): IterableIterator<[string, string]> -返回一个ES6的迭代器,迭代器的每一项都是一个JavaScript Array。Array的第一项是name,Array的第二项是value。 +返回一个ES6的迭代器,迭代器的每一项都是一个Array。Array的第一项是name,Array的第二项是value。 **原子化服务API**:从API version 11开始,该接口支持在原子化服务中使用。 @@ -782,7 +784,7 @@ console.log(params.getAll('fod').toString()) // Output ["1","3"]. entries(): IterableIterator<[string, string]> -返回一个ES6的迭代器,迭代器的每一项都是一个JavaScript Array。Array的第一项是name,Array的第二项是value。 +返回一个ES6的迭代器,迭代器的每一项都是一个Array。Array的第一项是name,Array的第二项是value。 > **说明:** > @@ -1025,7 +1027,7 @@ for (let value of values) { [Symbol.iterator]\(): IterableIterator<[string, string]> -返回一个ES6的迭代器,迭代器的每一项都是一个JavaScript Array。Array的第一项是name,Array的第二项是value。 +返回一个ES6的迭代器,迭代器的每一项都是一个Array。Array的第一项是name,Array的第二项是value。 > **说明:** > diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-util.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-util.md index ec51754a409..5e03db3f54a 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-util.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-util.md @@ -314,7 +314,7 @@ console.info("RFC 4122 Version 4 UUID:" + uuid); generateRandomBinaryUUID(entropyCache?: boolean): Uint8Array -使用加密安全随机数生成器生成随机的RFC 4122版本4的Uint8Array类型UUID。 +使用加密安全随机数生成器生成随机的RFC 4122版本4的UUID。 **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 @@ -352,7 +352,7 @@ console.info(JSON.stringify(uuid)); parseUUID(uuid: string): Uint8Array -将generateRandomUUID生成的string类型UUID转换为generateRandomBinaryUUID生成的Uint8Array类型UUID,符合RFC 4122版本规范。 +将generateRandomUUID生成的string类型UUID转换为generateRandomBinaryUUID生成的UUID,符合RFC 4122版本规范。 **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 @@ -483,7 +483,9 @@ promiseWrapper(original: (err: Object, value: Object) => void): Object getHash(object: object): number -获取对象的Hash值。首次获取时,则计算Hash值并保存到对象的Hash域(返回随机的Hash值);后续获取时,直接从Hash域中返回Hash值(同一对象多次返回值保持不变)。 +获取对象的Hash值。 + +首次获取时,则计算Hash值并保存到对象的Hash域(返回随机的Hash值);后续获取时,直接从Hash域中返回Hash值(同一对象多次返回值保持不变)。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -528,7 +530,9 @@ console.info('result2 is ' + result2); getMainThreadStackTrace(): string -获取主线程的栈追踪信息,最多返回64层调用帧。该接口可能会影响到主线程性能,建议谨慎使用。 +获取主线程的栈追踪信息,最多返回64层调用帧。 + +该接口可能对主线程性能产生影响,建议仅在必要时使用,如日志记录、错误分析或调试场景。 **原子化服务API**:从API version 20开始,该接口支持在原子化服务中使用。 @@ -563,7 +567,7 @@ console.info(stack); ## DecodeToStringOptions12+ -解码是否使用流处理方式。 +用于配置decodeToString方法在解码字节流时的行为参数。 **原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 @@ -2539,7 +2543,7 @@ console.info('result = ' + result); entries(): IterableIterator<[K, V]> -迭代此对象中的所有键值对。 +返回一个迭代器对象,用于按插入顺序遍历当前对象中的所有键值对([key, value])。 **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-worker.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-worker.md index c8ffc41b828..43bda666f7a 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-worker.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-worker.md @@ -1,10 +1,10 @@ # @ohos.worker (启动一个Worker) -Worker是与主线程并行的独立线程。创建Worker的线程称之为宿主线程,Worker自身的线程称之为Worker线程。创建Worker传入的url文件在Worker线程中执行,可以处理耗时操作但不可以直接操作UI。 +Worker是与主线程并行的具有ArkTS执行环境的独立线程。创建Worker的线程称之为宿主线程,Worker自身的线程称之为Worker线程。创建Worker传入的url文件在Worker线程中执行,可以处理耗时操作但不可以直接操作UI。 Worker主要作用是为应用程序提供一个多线程的运行环境,可满足应用程序在执行过程中与宿主线程分离,在后台线程中运行一个脚本处理耗时操作,极大避免类似于计算密集型或高延迟的任务阻塞宿主线程的运行。由于Worker一旦被创建则不会主动被销毁,若不处于任务状态一直运行,在一定程度上会造成资源的浪费,应及时关闭空闲的Worker。 -Worker的上下文对象和UI主线程的上下文对象是不同的,Worker线程不支持UI操作。 +Worker的上下文环境和UI主线程的上下文环境是独立的,Worker线程不支持UI操作。 Worker使用过程中的相关注意点请查看[Worker注意事项](../../arkts-utils/worker-introduction.md#worker注意事项)。 @@ -60,7 +60,7 @@ Worker线程的优先级枚举,各优先级对应关系请参考[QoS等级定 ## ThreadWorker9+ -使用以下方法前,均需先构造ThreadWorker实例,ThreadWorker类继承[WorkerEventTarget](#workereventtarget9)。 +使用以下方法前,均需先构造ThreadWorker实例,ThreadWorker类继承自[WorkerEventTarget](#workereventtarget9)。 ### constructor9+ @@ -115,7 +115,7 @@ postMessage(message: Object, transfer: ArrayBuffer[]): void | 参数名 | 类型 | 必填 | 说明 | | -------- | ------------- | ---- | ------------------------------------------------------------ | -| message | Object | 是 | 发送至Worker的数据,该数据对象必须是可序列化,序列化支持类型见[其他说明](#序列化支持类型)。 | +| message | Object | 是 | 发送至Worker的数据,该数据对象必须是可序列化对象,序列化支持类型见[其他说明](#序列化支持类型)。 | | transfer | ArrayBuffer[] | 是 | 表示可转移的ArrayBuffer实例对象数组,该数组中对象的所有权会被转移到Worker线程,在宿主线程中将会变为不可用,仅在Worker线程中可用,数组不可传入null。 | **错误码:** @@ -189,7 +189,7 @@ struct Index { workerInstance.onexit = (code) => { console.info("main thread terminate"); } - + // 监听Worker错误 workerInstance.onAllErrors = (err: ErrorEvent) => { console.error("main error message " + err.message); } @@ -216,7 +216,7 @@ postMessage(message: Object, options?: PostMessageOptions): void | 参数名 | 类型 | 必填 | 说明 | | ------- | ----------------------------------------- | ---- | ------------------------------------------------------------ | -| message | Object | 是 | 发送至Worker的数据,该数据对象必须是可序列化,序列化支持类型见[其他说明](#序列化支持类型)。 | +| message | Object | 是 | 发送至Worker的数据,该数据对象必须是可序列化对象,序列化支持类型见[其他说明](#序列化支持类型)。 | | options | [PostMessageOptions](#postmessageoptions) | 否 | 当填入该参数时,与传入ArrayBuffer[]的作用一致,该数组中对象的所有权会被转移到Worker线程,在宿主线程中将会变为不可用,仅在Worker线程中可用。
若不填入该参数,默认设置为 undefined,通过拷贝数据的方式传输信息到Worker线程。 | **错误码:** @@ -2509,7 +2509,7 @@ workerPort.onmessage = (d: MessageEvents): void => { } // workerPort.postMessage(func1); 传递func1发生序列化错误 let obj2 = new MyModel(); - workerPort.postMessage(obj2); // 传递obj2不会发生序列化错误 + workerPort.postMessage(obj2); // 传递obj2不会发生序列化错误,obj2中的函数会丢失 } workerPort.onmessageerror = () => { console.error("worker.ets onmessageerror"); @@ -2520,7 +2520,7 @@ workerPort.onerror = (err: ErrorEvent) => { ``` ### 内存模型 -Worker基于Actor并发模型实现。在Worker的交互流程中,JS宿主线程可以创建多个Worker子线程,各个Worker线程间相互隔离,并通过序列化传递对象,等到Worker线程完成计算任务,再把结果返回给宿主线程。 +Worker基于Actor并发模型实现。在Worker的交互流程中,ArkTS宿主线程可以创建多个Worker子线程,各个Worker线程间运行环境相互隔离,并通过序列化传递对象,等到Worker线程完成计算任务,再把结果返回给宿主线程。 Actor并发模型的交互原理:各个Actor并发地处理宿主线程任务,每个Actor内部都有一个消息队列和单线程执行模块。消息队列负责接收宿主线程及其他Actor的请求,而单线程执行模块则负责串行地处理这些请求、向其他Actor发送请求以及创建新的Actor。由于Actor采用的是异步方式,各个Actor之间相互隔离且没有数据竞争,因此Actor可以高并发运行。 diff --git a/zh-cn/application-dev/reference/apis-arkts/js-apis-xml.md b/zh-cn/application-dev/reference/apis-arkts/js-apis-xml.md index 8346d17064e..a9f8e65161f 100644 --- a/zh-cn/application-dev/reference/apis-arkts/js-apis-xml.md +++ b/zh-cn/application-dev/reference/apis-arkts/js-apis-xml.md @@ -146,7 +146,7 @@ console.log(result); // setDeclaration(): void -添加带有编码的文件声明。 +添加文件声明。 **原子化服务API**:从API version 11开始,该接口支持在原子化服务中使用。 @@ -984,6 +984,7 @@ parseXml(option: ParseOptions): void | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** +具体使用场景可参照[解析XML标签和标签值](../../arkts-utils/xml-parsing.md#解析xml标签和标签值)和[解析XML属性和属性值](../../arkts-utils/xml-parsing.md#解析xml属性和属性值) ```ts import { xml, util } from '@kit.ArkTS'; diff --git a/zh-cn/application-dev/reference/common/_j_s_v_m.md b/zh-cn/application-dev/reference/common/_j_s_v_m.md index 1c747386bea..a1306d96be2 100644 --- a/zh-cn/application-dev/reference/common/_j_s_v_m.md +++ b/zh-cn/application-dev/reference/common/_j_s_v_m.md @@ -62,7 +62,7 @@ | 名称 | 描述 | | -------- | -------- | -| typedef uint16_t **char16_t** | | +| typedef uint16_t **char16_t** | 在旧版本的C++编译器中,如果char16_t类型未被定义(如C++11前的标准),则使用此语句将其定义为uint16_t类型,以实现兼容性支持。| | typedef struct JSVM_VM__ \* [JSVM_VM](#jsvm_vm) | 表示JavaScript虚拟机实例。 | | typedef struct JSVM_VMScope__ \* [JSVM_VMScope](#jsvm_vmscope) | 表示JavaScript虚拟机作用域。 | | typedef struct JSVM_EnvScope__ \* [JSVM_EnvScope](#jsvm_envscope) | 表示用于控制附加到当前虚拟机实例的环境。只有当线程通过 OH_JSVM_OpenEnvScope进入该环境的JSVM_EnvScope后,该环境才 对线程的虚拟机实例可用。 | -- Gitee