• Home
Name Date Size #Lines LOC

..--

figures/22-Oct-2025-

Readme-EN.mdD22-Oct-20258 KiB120118

build-with-ndk-cmake.mdD22-Oct-20259 KiB224148

build-with-ndk-ide.mdD22-Oct-20253.6 KiB7851

build-with-ndk-overview.mdD22-Oct-20252.4 KiB3819

build-with-ndk-prebuilts.mdD22-Oct-20254.7 KiB9162

c-cpp-overview.mdD22-Oct-20256.2 KiB7244

cpu-features.mdD22-Oct-20253.1 KiB6352

create-with-ndk.mdD22-Oct-20251.2 KiB2313

debug-asan.mdD22-Oct-2025693 138

debug-ide.mdD22-Oct-20251.9 KiB169

debug-performance-profiling-overview.mdD22-Oct-2025298 83

develop-code-overview.mdD22-Oct-2025392 62

fdsan.mdD22-Oct-202518.4 KiB442344

hw-guide.mdD22-Oct-2025741 83

jsvm-apply-jit-profile.mdD22-Oct-20251.2 KiB95

jsvm-data-types-interfaces.mdD22-Oct-202596.4 KiB2,4962,088

jsvm-debugger-cpuprofiler-heapsnapshot.mdD22-Oct-202515.7 KiB316255

jsvm-frequently-questions.mdD22-Oct-20257.1 KiB9672

jsvm-guidelines.mdD22-Oct-202517.5 KiB424363

jsvm-introduction.mdD22-Oct-20252.5 KiB5929

jsvm-optimizations.mdD22-Oct-20258.3 KiB194135

napi-data-types-interfaces.mdD22-Oct-202533.4 KiB768579

napi-guidelines.mdD22-Oct-202518.5 KiB459357

napi-introduction.mdD22-Oct-20252.6 KiB5026

native-bundle-guidelines.mdD22-Oct-202515.7 KiB316264

ndk-development-overview.mdD22-Oct-20254.1 KiB9857

neon-guide.mdD22-Oct-20254.4 KiB10476

ohos-abi.mdD22-Oct-20254.7 KiB8753

openmp-guideline.mdD22-Oct-20255.1 KiB158120

openmp-overview.mdD22-Oct-20251.9 KiB158

purgeable-memory-guidelines.mdD22-Oct-20255 KiB12899

qos-guidelines.mdD22-Oct-20259.8 KiB257186

rawfile-guidelines.mdD22-Oct-202518.3 KiB362307

use-call-threadsafe-function-with-priority.mdD22-Oct-20256.5 KiB163135

use-jsvm-about-JSON.mdD22-Oct-20253.5 KiB9471

use-jsvm-about-array.mdD22-Oct-202534.9 KiB978923

use-jsvm-about-arraybuffer.mdD22-Oct-20259.2 KiB238211

use-jsvm-about-bigint.mdD22-Oct-202512.4 KiB325283

use-jsvm-about-class.mdD22-Oct-202518 KiB499413

use-jsvm-about-code-cache.mdD22-Oct-20255.6 KiB12596

use-jsvm-about-date.mdD22-Oct-20255.6 KiB146113

use-jsvm-about-external-string.mdD22-Oct-20253.1 KiB8362

use-jsvm-about-object.mdD22-Oct-202525.1 KiB690623

use-jsvm-about-primitive.mdD22-Oct-202514.4 KiB455400

use-jsvm-about-private.mdD22-Oct-20253.9 KiB9879

use-jsvm-about-promise.mdD22-Oct-202511.5 KiB266224

use-jsvm-about-property.mdD22-Oct-202525.9 KiB704624

use-jsvm-about-proxy.mdD22-Oct-20254.1 KiB10692

use-jsvm-about-string.mdD22-Oct-202512.8 KiB360304

use-jsvm-about-trace.mdD22-Oct-20255.2 KiB8466

use-jsvm-about-version.mdD22-Oct-20252.6 KiB7357

use-jsvm-about-wasm.mdD22-Oct-202510.5 KiB217182

use-jsvm-about-well-known-symbols.mdD22-Oct-20253.2 KiB8260

use-jsvm-about-wrapper-object.mdD22-Oct-20252.4 KiB7452

use-jsvm-basic-data-types.mdD22-Oct-202513.6 KiB434351

use-jsvm-create-snapshot.mdD22-Oct-202514 KiB325288

use-jsvm-error.mdD22-Oct-202523.4 KiB605530

use-jsvm-execute_tasks.mdD22-Oct-20258.9 KiB239205

use-jsvm-function-call.mdD22-Oct-20255.2 KiB133112

use-jsvm-heapstatistics-debugger-cpuprofiler-heapsnapshot.mdD22-Oct-20257.4 KiB184145

use-jsvm-life-cycle.mdD22-Oct-202515.4 KiB316259

use-jsvm-memory-management.mdD22-Oct-20254.4 KiB11594

use-jsvm-process.mdD22-Oct-202510.3 KiB243205

use-jsvm-runtime-task.mdD22-Oct-202513.3 KiB366325

use-jsvm-strict-equals.mdD22-Oct-20252.6 KiB6954

use-jsvm-trigger-exceptions.mdD22-Oct-20258.6 KiB232193

use-jsvm-trigger-gc.mdD22-Oct-20256.6 KiB146122

use-napi-about-array.mdD22-Oct-202530.4 KiB928768

use-napi-about-arraybuffer.mdD22-Oct-202510 KiB285224

use-napi-about-bigint.mdD22-Oct-202510 KiB315246

use-napi-about-buffer.mdD22-Oct-202510.5 KiB345270

use-napi-about-class.mdD22-Oct-20257.1 KiB217165

use-napi-about-cleanuphook.mdD22-Oct-202510.8 KiB260217

use-napi-about-crash.mdD22-Oct-202517.4 KiB488416

use-napi-about-custom-asynchronous-operations.mdD22-Oct-20256.1 KiB126101

use-napi-about-date.mdD22-Oct-20255.5 KiB180134

use-napi-about-environmental-life-cycle.mdD22-Oct-20253.8 KiB131100

use-napi-about-error.mdD22-Oct-202520.4 KiB650524

use-napi-about-extension.mdD22-Oct-202540.1 KiB1,3181,019

use-napi-about-function.mdD22-Oct-20257.8 KiB232191

use-napi-about-object.mdD22-Oct-202521.9 KiB671555

use-napi-about-other-practical-tools.mdD22-Oct-20254.9 KiB132101

use-napi-about-primitive.mdD22-Oct-202512.1 KiB435330

use-napi-about-promise.mdD22-Oct-20259.5 KiB213168

use-napi-about-property.mdD22-Oct-202525.6 KiB756634

use-napi-about-string.mdD22-Oct-202510 KiB313239

use-napi-ark-runtime.mdD22-Oct-20253.8 KiB142113

use-napi-asynchronous-task.mdD22-Oct-20259.2 KiB216173

use-napi-basic-data-types.mdD22-Oct-202514.1 KiB413321

use-napi-event-loop.mdD22-Oct-20256.2 KiB180154

use-napi-faqs.mdD22-Oct-202515.1 KiB319253

use-napi-life-cycle.mdD22-Oct-202513.7 KiB304246

use-napi-load-module-with-info.mdD22-Oct-202516.7 KiB516424

use-napi-load-module.mdD22-Oct-202515.8 KiB539446

use-napi-method-promise.mdD22-Oct-20255 KiB155129

use-napi-object-wrap.mdD22-Oct-20257.8 KiB260203

use-napi-process.mdD22-Oct-20258.4 KiB224163

use-napi-thread-safety.mdD22-Oct-20256.5 KiB166140

use-sendable-napi.mdD22-Oct-20257.8 KiB235178

Readme-EN.md

1# Node-API
2
3- [Getting Started with the NDK](ndk-development-overview.md)
4- [Creating an NDK Project](create-with-ndk.md)
5- Building an NDK Project<!--build-with-ndk-->
6  - [NDK Project Building Overview](build-with-ndk-overview.md)
7  - [Building an NDK Project with the DevEco Studio Template](build-with-ndk-ide.md)
8  - [Building an NDK Project with the Command Line CMake](build-with-ndk-cmake.md)
9  - [Building an NDK Project with Prebuilt Libraries](build-with-ndk-prebuilts.md)
10- Code Development<!--coding-->
11  - [Development Overview](develop-code-overview.md)
12  - C/C++ Standard Library<!--c-cpp-->
13    - [C/C++ Library Mechanisms](c-cpp-overview.md)
14    - [Using fdsan](fdsan.md)
15  - Using Node-API<!--using-napi-interaction-with-cpp-->
16    - [Node-API Overview](napi-introduction.md)
17    - [Node-API Data Types and APIs](napi-data-types-interfaces.md)
18    - [Node-API Development Specifications](napi-guidelines.md)
19    - [Node-API Development Process](use-napi-process.md)
20    - Node-API Guides<!--napi-use-->
21      - [Using Node-API Extension APIs](use-napi-about-extension.md)
22      - [Working with Arrays Using Node-API](use-napi-about-array.md)
23      - [Working with ArrayBuffer Using Node-API](use-napi-about-arraybuffer.md)
24      - [Working with BigInt Using Node-API](use-napi-about-bigint.md)
25      - [Working with Buffer Using Node-API](use-napi-about-buffer.md)
26      - [Working with Basic Data Types Using Node-API](use-napi-basic-data-types.md)
27      - [Working with Class Using Node-API](use-napi-about-class.md)
28      - [Working with Cleanup Hooks Using Node-API](use-napi-about-cleanuphook.md)
29      - [Working with Date Using Node-API](use-napi-about-date.md)
30      - [Error Handling Using Node-API](use-napi-about-error.md)
31      - [Associating Data with a Running Environment to Tie Their Lifecycle Using Node-API](use-napi-about-environmental-life-cycle.md)
32      - [Working with Functions Using Node-API](use-napi-about-function.md)
33      - [Performing Lifecycle Management Using Node-API](use-napi-life-cycle.md)
34      - [Working with Objects Using Node-API](use-napi-about-object.md)
35      - [Working with Other Node-API Utilities](use-napi-about-other-practical-tools.md)
36      - [Working with Primitives Using Node-API](use-napi-about-primitive.md)
37      - [Implementing Asynchronous Operations Using Node-API](use-napi-about-promise.md)
38      - [Working with Properties Using Node-API](use-napi-about-property.md)
39      - [Working with Strings Using Node-API](use-napi-about-string.md)
40      - [Customizing Asynchronous Operations Using Node-API](use-napi-about-custom-asynchronous-operations.md)
41    - Typical Node-API Use Cases<!--napi-scenarios-->
42      - [Asynchronous Task Development Using Node-API](use-napi-asynchronous-task.md)
43      - [Thread Safety Development Using Node-API](use-napi-thread-safety.md)
44      - [Wrapping a Native Object in an ArkTS Object](use-napi-object-wrap.md)
45      - [Wrapping a Native Object in a Sendable ArkTS Object](use-sendable-napi.md)
46      - [Creating an ArkTS Runtime Environment Using Node-API](use-napi-ark-runtime.md)
47      - [Loading a Module in the Main Thread Using Node-API](use-napi-load-module.md)
48      - [Running or Stopping an Event Loop in an Asynchronous Thread Using Node-API Extension APIs](use-napi-event-loop.md)
49      - [Loading a Module Using Node-API](use-napi-load-module-with-info.md)
50      - [Passing a Task with the Specified Priority to an ArkTS Thread from an Asynchronous Thread Using Node-API](use-call-threadsafe-function-with-priority.md)
51      - [Analyzing Exceptions and Crashes Triggered by Using Node-API](use-napi-about-crash.md)
52      - [Calling an ArkTS Method with Return Value of a Promise Using Node-API](use-napi-method-promise.md)
53    - Node-API FAQs<!--napi-questions-->
54      - [Node-API FAQs](use-napi-faqs.md)
55  - Using JSVM-API<!--jsvm-->
56    - [JSVM-API Overview](jsvm-introduction.md)
57    - [JSVM-API Data Types and APIs](jsvm-data-types-interfaces.md)
58    - [JSVM-API Development Process](use-jsvm-process.md)
59    - JSVM-API Development Specifications<!--jsvm-development-standards-->
60      - [JSVM-API Development Specifications](jsvm-guidelines.md)
61      - [JSVM-API FAQs](jsvm-frequently-questions.md)
62    - JSVM-API Guides<!--jsvm-use-->
63      - [Working with Tasks Using JSVM-API](use-jsvm-execute_tasks.md)
64      - [Working with VM Snapshots Using JSVM-API](use-jsvm-create-snapshot.md)
65      - [Working with Wasm Using JSVM-API](use-jsvm-about-wasm.md)
66      - [Creating and Calling JS Functions Using JSVM-API](use-jsvm-function-call.md)
67      - [Performing JSON Operations Using JSVM-API](use-jsvm-about-JSON.md)
68      - [Working with Arrays Using JSVM-API](use-jsvm-about-array.md)
69      - [Working with ArrayBuffer Using JSVM-API](use-jsvm-about-arraybuffer.md)
70      - [Working with BigInt Using JSVM-API](use-jsvm-about-bigint.md)
71      - [Working with Class Using JSVM-API](use-jsvm-about-class.md)
72      - [Working with Date Using JSVM-API](use-jsvm-about-date.md)
73      - [Working with Objects Using JSVM-API](use-jsvm-about-object.md)
74      - [Working with Primitives Using JSVM-API](use-jsvm-about-primitive.md)
75      - [Implementing Asynchronous Operations Using JSVM-API](use-jsvm-about-promise.md)
76      - [Setting JS Object Properties Using JSVM-API](use-jsvm-about-property.md)
77      - [Working with Strings Using JSVM-API](use-jsvm-about-string.md)
78      - [Obtaining the JSVM-API Version Using JSVM-API](use-jsvm-about-version.md)
79      - [Error Handling Using JSVM-API](use-jsvm-error.md)
80      - [Debugging and Profiling JS Code Using JSVM-API](use-jsvm-heapstatistics-debugger-cpuprofiler-heapsnapshot.md)
81      - [Performing Lifecycle Management Using JSVM-API](use-jsvm-life-cycle.md)
82      - [Performing Memory Management Using JSVM-API](use-jsvm-memory-management.md)
83      - [Comparing JS Values Using JSVM-API](use-jsvm-strict-equals.md)
84      - [Customizing Exception Handling Using JSVM-API](use-jsvm-trigger-exceptions.md)
85      - [Triggering GC Using JSVM-API](use-jsvm-trigger-gc.md)
86      - [Setting the private Property Using JSVM-API](use-jsvm-about-private.md)
87      - [Working with Latin1/UTF16 Strings Using JSVM-API](use-jsvm-about-external-string.md)
88      - [Working with Proxy Using JSVM-API](use-jsvm-about-proxy.md)
89      - [Working with Well-Known Symbols Using JSVM-API](use-jsvm-about-well-known-symbols.md)
90      - [Working with Wrapper Objects Using JSVM-API](use-jsvm-about-wrapper-object.md)
91      - [Creating Basic Data Types Using JSVM-API](use-jsvm-basic-data-types.md)
92    - Typical JSVM-API Use Cases<!--jsvm-scenarios-->
93      - [JSVM-API Debugging](jsvm-debugger-cpuprofiler-heapsnapshot.md)
94      - [Working with Trace Using JSVM-API](use-jsvm-about-trace.md)
95      - [Requesting the JIT Profile for JSVMs](jsvm-apply-jit-profile.md)
96      - JSVM-API Tuning and Performant Coding Cases<!--jsvm-usage-examples-->
97        - [Creating and Destroying JSVMs Using JSVM-API](use-jsvm-runtime-task.md)
98        - [Accelerating Compilation Using a Code Cache](use-jsvm-about-code-cache.md)
99        - [JSVM Tuning Practices](jsvm-optimizations.md)
100  - OpenMP Support<!--openmp-->
101    - [OpenMP Overview](openmp-overview.md)
102    - [Building and Running Applications Using OpenMP](openmp-guideline.md)
103  - Resource Management<!--resource-management-->
104    - [Raw File Development](rawfile-guidelines.md)
105  - Thread Scheduling<!--thread-scheduling-->
106    - [QoS Development](qos-guidelines.md)
107  - Memory Management<!--memory-management-->
108    - [Purgeable Memory Development](purgeable-memory-guidelines.md)
109  - Bundle Management<!--bundle-management-->
110    - [Native Bundle Development](native-bundle-guidelines.md)
111- Debugging and Profiling<!--debugging-profiling-->
112  - [Debugging and Profiling Overview](debug-performance-profiling-overview.md)
113  - [Debugging in DevEco Studio](debug-ide.md)
114  - [C/C++ Memory Error Detection](debug-asan.md)
115- Hardware Compatibility<!--hardware-compatibility-->
116  - [Introduction to Hardware Compatibility](hw-guide.md)
117  - [OpenHarmony ABIs](ohos-abi.md)
118  - [CPU Features](cpu-features.md)
119  - [Using Neon Instructions](neon-guide.md)
120