diff --git a/zh-cn/application-dev/napi/jsvm-debugger-cpuprofiler-heapsnapshot.md b/zh-cn/application-dev/napi/jsvm-debugger-cpuprofiler-heapsnapshot.md index 0573616b31fcc71c89d26fc7e839163b0a2d2eed..ca908dbb931757b2cfb07a9231ef600878aada2a 100644 --- a/zh-cn/application-dev/napi/jsvm-debugger-cpuprofiler-heapsnapshot.md +++ b/zh-cn/application-dev/napi/jsvm-debugger-cpuprofiler-heapsnapshot.md @@ -36,7 +36,7 @@ JSVM,即标准JS引擎,是严格遵守Ecmascript规范的JavaScript代码执 }] ``` -2. 为避免debugger过程中的暂停被误报为无响应异常,可以[开启DevEco Studio的Debug模式](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-debug-arkts-debug-V5)(无需设置断点),或者可以在非主线程的其他线程中运行JSVM。 +2. 为避免debugger过程中的暂停被误报为无响应异常,可以[debug启动调试](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-debug-arkts-debug-V5)(无需设置断点),或者可以在非主线程的其他线程中运行JSVM。 ```cpp // 在非主线程的其他线程中运行JSVM示例代码 static napi_value RunTest(napi_env env, napi_callback_info info) diff --git a/zh-cn/application-dev/napi/use-jsvm-about-JSON.md b/zh-cn/application-dev/napi/use-jsvm-about-JSON.md index c18fa534bdac7588a3b08affb88e820702877a63..8f0df9bb43fb4da09a5b1343ca55f7f8efaadfa7 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-JSON.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-JSON.md @@ -88,8 +88,8 @@ JSVM_PropertyDescriptor descriptor[] = { ## 预期结果 - +```ts Test JSVM jsonParseNumber: 10.555000 Test JSVM jsonParseNumber: {"first":"one","second":"two","third":"three"} - +``` diff --git a/zh-cn/application-dev/napi/use-jsvm-about-class.md b/zh-cn/application-dev/napi/use-jsvm-about-class.md index 5f08ba3d6df1e2460ae040c729e6c7dc8c4326e1..994452418a5144272dc9d59529e315f6164417bd 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-class.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-class.md @@ -82,19 +82,19 @@ static JSVM_PropertyDescriptor descriptor[] = { #### 样例JS - +```ts const char *srcCallNative = R"JS( function Fruit(name) { this.name = name; } newInstance(Fruit, "apple"); )JS"; - +``` #### 执行结果 - 在LOG中输出下面的结果: +```ts NewInstance:{"name":"apple"} - +``` ### OH_JSVM_GetNewTarget 用于获取函数的元属性new.target值。在JavaScript中,new.target是一个特殊的元属性,用于检测函数或构造函数是否是通过 'new' 运算符被调用的。 @@ -182,15 +182,15 @@ static JSVM_PropertyDescriptor descriptor[] = { #### 样例JS - +```ts const char *srcCallNative = R"JS( defineClass(); )JS"; - +``` #### 执行结果 在LOG中输出下面的结果: - +```ts Create Instance NAPI MyObject::New newTarget != nullptr @@ -202,7 +202,7 @@ Create Instance NAPI MyObject::New newTarget == nullptr NewInstance:{"name":"lilei"} - +``` ### OH_JSVM_Wrap 在JavaScript对象中封装原生实例。稍后可以使用OH_JSVM_Unwrap()解包原生实例 @@ -295,17 +295,17 @@ static JSVM_PropertyDescriptor descriptor[] = { #### 样例JS - +```ts const char *srcCallNative = R"JS( class Obj {}; wrapObject(new Obj()); removeWrap(new Obj()); )JS"; - +``` #### 执行结果 在LOG中输出下面的结果: - +```ts JSVM wrap JSVM name: lilei @@ -317,7 +317,7 @@ JSVM removeWrap JSVM OH_JSVM_RemoveWrap success JSVM deref_item - +``` ### OH_JSVM_DefineClassWithOptions **Note:** 传入的父类class必须是通过OH_JSVM_DefineClass系列接口创建出来的,不然会被视为无效参数,返回JSVM_INVALID_ARG错误码。 目前支持以下的DefineClassOptions: @@ -494,9 +494,12 @@ static JSVM_PropertyDescriptor descriptor[] = { ``` #### 样例JS - +```ts const char *srcCallNative = R"JS(testDefineClassWithOptions();)JS"; +``` #### 执行结果 在LOG中输出下面的结果: +```ts Run OH_JSVM_DefineClassWithOptions: Success +``` \ No newline at end of file diff --git a/zh-cn/application-dev/napi/use-jsvm-about-primitive.md b/zh-cn/application-dev/napi/use-jsvm-about-primitive.md index 125bd98caed936754c7553355aca89db479fe980..457a392099f9f905c608cae5af81aa43976a08f7 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-primitive.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-primitive.md @@ -376,7 +376,7 @@ JSVM OH_JSVM_GetGlobal success ### OH_JSVM_GetNull -用于获取JavaScript null +调用 JSVM 接口获取 JavaScript 的 null 值 cpp 部分代码 @@ -417,7 +417,7 @@ JSVM OH_JSVM_GetNull success ### OH_JSVM_GetUndefined -用于获取JavaScript undefined +调用 OH_JSVM_GetUndefined 获取 JavaScript 的 undefined 值并返回 cpp 部分代码 diff --git a/zh-cn/application-dev/napi/use-jsvm-about-property.md b/zh-cn/application-dev/napi/use-jsvm-about-property.md index aeb74602e87a2a55b5946743d09d507a39d377e5..99ebabdfde1887765469b7788d8e712daf13ce2d 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-property.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-property.md @@ -239,7 +239,7 @@ JSVM OH_JSVM_HasProperty success:0 ### OH_JSVM_DeleteProperty 尝试从给定的Object中删除由key指定的属性,并返回操作的结果。 -如果对象是一个不可扩展的对象,或者属性是不可配置的,则可能无法删除该属性。 +如果对象是一个不可扩展的对象,或者属性是不可配置的,则无法删除该属性。 cpp部分代码 diff --git a/zh-cn/application-dev/napi/use-jsvm-about-string.md b/zh-cn/application-dev/napi/use-jsvm-about-string.md index d99a91ae63d0ed23cdead44f7461a23c28522153..144049c3e3a4c91242574e17cc4067564b4ede89 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-string.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-string.md @@ -81,9 +81,9 @@ const char *srcCallNative = R"JS( 预期输出结果 - +```ts ![GetValueStringUtf8](figures/jsvm_about_string_GetValueStringUtf8.png) - +``` **注意事项**:`getValueStringUtf8(arg)`入参`arg`非字符串型数据时接口会调用失败。 ### OH_JSVM_CreateStringUtf8 @@ -131,9 +131,9 @@ const char *srcCallNative = R"JS( 预期输出结果 - +```ts ![CreateStringUtf8](figures/jsvm_about_string_CreateStringUtf8.png) - +``` ### OH_JSVM_GetValueStringUtf16 OH_JSVM_GetValueStringUtf16,将JavaScript的字符类型的数据转换为utf16编码的字符。 @@ -195,9 +195,9 @@ const char *srcCallNative = R"JS( 预期输出结果 - +```ts ![GetValueStringUtf16](figures/jsvm_about_string_GetValueStringUtf16.png) - +``` **注意事项**:`getValueStringUtf16(arg)`入参`arg`非字符串型数据时接口会调用失败。 ### OH_JSVM_CreateStringUtf16 @@ -252,9 +252,9 @@ const char *srcCallNative = R"JS( 预期输出结果 - +```ts ![CreateStringUtf16](figures/jsvm_about_string_CreateStringUtf16.png) - +``` ### OH_JSVM_GetValueStringLatin1 OH_JSVM_GetValueStringLatin1接口可以将JavaScript的字符类型的数据转换为ISO-8859-1编码的字符。 @@ -306,10 +306,10 @@ const char *srcCallNative = R"JS( 预期输出结果 - +```ts *ISO-8859-1编码不支持中文,传入中文字符会乱码* ![GetValueStringLatin1](figures/jsvm_about_string_GetValueStringLatin1.png) - +``` **注意事项**:`getValueStringLatin1(arg)`入参`arg`非字符串型数据时接口会调用失败。 ### OH_JSVM_CreateStringLatin1 @@ -361,5 +361,6 @@ const char *srcCallNative = R"JS( 预期输出结果 - +```ts ![CreateStringLatin1](figures/jsvm_about_string_CreateStringLatin1.png) +``` \ No newline at end of file diff --git a/zh-cn/application-dev/napi/use-jsvm-about-v8-trace.md b/zh-cn/application-dev/napi/use-jsvm-about-v8-trace.md index 9e43e32cf97a42807456495b4674dfd0d9c33df0..343583d7dcef7e12209c016838ae7c92b9c3332c 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-v8-trace.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-v8-trace.md @@ -19,7 +19,7 @@ hdc shell setenforce 0 hdc shell param set web.debug.rcs true ``` 2. 启动web场景,可以看到hilog中有“RCS is on”的日志打印输出 -3. 使用hitrace工具抓取对应场景的trace。hitrace使用方法可参考[hitrace使用指导文档](../dfx/hitrace.md)。 +3. 使用hitrace工具抓取对应场景的trace。hitrace使用方法可参考[hitrace](../dfx/hitrace.md)。 4. 使用HiSmartPerf工具解析抓取到的trace,可以看到有“RCS_”前缀的trace点,即为V8对接到HiSmartPerf中的trace点。 5. 要查看compile、runtime、builtin、JS_Execution不同类别的trace数据,可使用以下关键字进行过滤: - compile:RCS_v8.compile diff --git a/zh-cn/application-dev/napi/use-jsvm-about-version.md b/zh-cn/application-dev/napi/use-jsvm-about-version.md index 4430fe1f26053e8f582bf8644bf778ccba1751ab..5444a9e722f84c9c7ec2aadbf96e8e46644db9c7 100644 --- a/zh-cn/application-dev/napi/use-jsvm-about-version.md +++ b/zh-cn/application-dev/napi/use-jsvm-about-version.md @@ -2,7 +2,7 @@ ## 简介 -用于获取当前版本信息。 +接口代码用于获取当前JSVM API的版本信息。 ## 接口说明 diff --git a/zh-cn/application-dev/napi/use-jsvm-heapstatistics-debugger-cpuprofiler-heapsnapshot.md b/zh-cn/application-dev/napi/use-jsvm-heapstatistics-debugger-cpuprofiler-heapsnapshot.md index 8727ced17f55c860e79f89f85c0f26b7b0cc7d23..8c412ff3311572816fa533a376666ad3dc3047b5 100644 --- a/zh-cn/application-dev/napi/use-jsvm-heapstatistics-debugger-cpuprofiler-heapsnapshot.md +++ b/zh-cn/application-dev/napi/use-jsvm-heapstatistics-debugger-cpuprofiler-heapsnapshot.md @@ -163,7 +163,7 @@ JSVM API heap usedGlobalHandlesSize: 32 以下接口的示例代码可以参考链接: -[JSVM调试调优能力](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/napi/jsvm-debugger-cpuprofiler-heapsnapshot.md) +[JSVM-API调试&定位](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/napi/jsvm-debugger-cpuprofiler-heapsnapshot.md) ### OH_JSVM_StartCpuProfiler diff --git a/zh-cn/application-dev/napi/use-jsvm-memory-management.md b/zh-cn/application-dev/napi/use-jsvm-memory-management.md index f651067748bf8bea710506733b60e8d82e31ebcd..91b63cb59eef4e014d104a14a7ba59a5fde1493f 100644 --- a/zh-cn/application-dev/napi/use-jsvm-memory-management.md +++ b/zh-cn/application-dev/napi/use-jsvm-memory-management.md @@ -66,9 +66,10 @@ const char *srcCallNative = R"JS(adjustExternalMemory())JS"; 输出结果 在LOG中输出下面的信息: +```ts JSVM OH_JSVM_AdjustExternalMemory: success JSVM Allocate memory size: 1048576 - +``` ### OH_JSVM_MemoryPressureNotification 通知虚拟机系统内存不足并有选择地触发垃圾回收 @@ -112,5 +113,7 @@ const char *srcCallNative = R"JS(memoryPressureNotification())JS"; 输出结果 在LOG中输出下面的信息: +```ts JSVM OH_JSVM_MemoryPressureNotification: success -JSVM Current JSVM memory pressure level: 2 \ No newline at end of file +JSVM Current JSVM memory pressure level: 2 +``` \ No newline at end of file diff --git a/zh-cn/application-dev/napi/use-jsvm-trigger-exceptions.md b/zh-cn/application-dev/napi/use-jsvm-trigger-exceptions.md index e2a4235f4fbc609fca4b61b2642778f901b7efd7..40335b63f00cb32f9d0a9804b5e6051cf3a1f5d3 100644 --- a/zh-cn/application-dev/napi/use-jsvm-trigger-exceptions.md +++ b/zh-cn/application-dev/napi/use-jsvm-trigger-exceptions.md @@ -83,12 +83,15 @@ static JSVM_PropertyDescriptor descriptor[] = { }; ``` #### 样例测试JS - +```ts const char *srcCallNative = R"JS(triggerOOMError();)JS"; - +``` #### 执行结果 -在LOG中输出: JSVM Trigger OOM-Error: success +在LOG中输出:  +```ts +JSVM Trigger OOM-Error: success +``` ### OH_JSVM_SetHandlerForFatalError 通过OH_JSVM_SetHandlerForFatalError,用户可以设置处理Fatal Error的函数。当多次调用这个API进行函数设置时,仅最后一次设置会生效。当用户传入的设置函数为NULL时,则表示取消之前设置的处理函数。 @@ -148,13 +151,15 @@ static JSVM_PropertyDescriptor descriptor[] = { }; ``` #### 样例测试JS - +```ts const char* srcCallNative = R"JS(triggerFatalError())JS"; - +``` #### 执行结果 -在LOG中输出: JSVM Trigger Fatal-Error: success - +在LOG中输出:  +```ts +JSVM Trigger Fatal-Error: success +``` ### OH_JSVM_SetHandlerForPromiseReject 通过OH_JSVM_SetHandlerForPromiseReject,用户可以设置处理Promise Reject的函数。当多次调用这个API进行函数设置时,仅最后一次设置会生效。当用户传入的设置函数为NULL时,则表示取消之前设置的处理函数。 #### cpp部分代码 @@ -222,9 +227,11 @@ static JSVM_PropertyDescriptor descriptor[] = { }; ``` #### 样例测试JS - +```ts const char* srcCallNative = R"JS(triggerPromiseReject())JS"; - +``` #### 执行结果 - -在LOG中输出: JSVM Trigger PromiseReject: success \ No newline at end of file +在LOG中输出:  +```ts +JSVM Trigger PromiseReject: success +``` \ No newline at end of file diff --git a/zh-cn/application-dev/napi/use-jsvm-trigger-gc.md b/zh-cn/application-dev/napi/use-jsvm-trigger-gc.md index 5eb6b529b2105f01dcc78055ac75d55faafd57b1..e97509e8bf050face40092b20447962eb9e48c0c 100644 --- a/zh-cn/application-dev/napi/use-jsvm-trigger-gc.md +++ b/zh-cn/application-dev/napi/use-jsvm-trigger-gc.md @@ -131,10 +131,12 @@ static JSVM_PropertyDescriptor descriptor[] = { }; ``` #### 样例测试JS +```ts const char *srcCallNative = R"JS(triggerGC();)JS"; - +``` #### 执行结果 在LOG中输出下面结果: +```ts == before GC == gc type: 4 gc flag: 4 @@ -143,3 +145,4 @@ gc type: 4 gc flag: 4 data: 2024 JSVM Trigger GC: success +``` \ No newline at end of file