提交 ed49a7cc 编写于 作者: W wusongqing

updated docs

Signed-off-by: Nwusongqing <wusongqing@huawei.com>
上级 5241b375
# Ability Access Control
> ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
> The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version.
## Modules to Import
```
import abilityAccessCtrl from '@ohos.abilityAccessCtrl'
```
## System Capabilities
SystemCapability.Security.AccessToken
## abilityAccessCtrl.createAtManager
createAtManager(): AtManager
Creates an **AtManager** instance, which is used for ability access control.
**Return value**
| Type| Description|
| -------- | -------- |
| [AtManager](#atmanager) | **AtManager** instance obtained.|
**Example**
```
var AtManager = abilityAccessCtrl.createAtManager();
```
## AtManager
Implements ability access control.
### verifyAccessToken
verifyAccessToken(tokenID: number, permissionName: string): Promise&lt;GrantStatus&gt;
Checks whether an application has been granted the specified permission. This method uses a promise to return the result.
**Parameters**
| Name| Type| Mandatory| Description|
| -------- | ------------------- | ---- | ------------------------------------------ |
| tokenID | number | Yes| ID of the application.|
| permissionName | string | Yes| Name of the permission to verify.|
**Return value**
| Type| Description|
| :------------ | :---------------------------------- |
| Promise&lt;GrantStatus&gt; | Promise instance used to return the result.|
**Example**
```
const AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let promise = AtManager.verifyAccessToken(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
promise.then(data => {
console.log(`promise: data->${JSON.stringify(data)}`);
});
```
### grantUserGrantedPermission
grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise&lt;number&gt;
Grants a user granted permission to an application. This method uses a promise to return the result.
Required permission: ohos.permission.GRANT_SENSITIVE_PERMISSIONS
**Parameters**
| Name| Type| Mandatory| Description|
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | Yes| ID of the application.|
| permissionName | string | Yes| Name of the permission to grant.|
| permissionFlag | number | Yes| Permission flag. The value **1** means that a dialog box will still be displayed after the user grants or denies the permission. The value **2** means that no dialog box will be displayed after the user grants or denies the permission. The value **3** means a system permission that cannot be changed.|
**Return value**
| Type| Description|
| :------------ | :---------------------------------- |
| Promise&lt;number&gt; | Promise instance used to return the result.|
**Example**
```
const AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let promise = AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
promise.then(data => {
console.log(`promise: data->${JSON.stringify(data)}`);
});
```
### grantUserGrantedPermission
grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback&lt;number&gt;): void
Grants a user granted permission to an application. This method uses an asynchronous callback to return the result.
Required permission: ohos.permission.GRANT_SENSITIVE_PERMISSIONS
**Parameters**
| Name| Type| Mandatory| Description|
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | Yes| ID of the application.|
| permissionName | string | Yes| Name of the permission to grant.|
| permissionFlag | number | Yes| Permission flag. The value **1** means that a dialog box will still be displayed after the user grants or denies the permission. The value **2** means that no dialog box will be displayed after the user grants or denies the permission. The value **3** means a system permission that cannot be changed.|
| callback | AsyncCallback&lt;number&gt; | Yes| Callback used to return the result.|
**Example**
```
const AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let permissionFlag = 1;
AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS",permissionFlag, data => {
console.log(`callback: data->${JSON.stringify(data)}`);
});
```
### revokeUserGrantedPermission
revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise&lt;number&gt;
Revokes a user granted permission given to an application. This method uses a promise to return the result.
Required permission: ohos.permission.REVOKE_SENSITIVE_PERMISSIONS
**Parameters**
| Name| Type| Mandatory| Description|
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | Yes| ID of the application.|
| permissionName | string | Yes| Name of the permission to revoke.|
| permissionFlag | number | Yes| Permission flag. The value **1** means that a dialog box will still be displayed after the user grants or denies the permission. The value **2** means that no dialog box will be displayed after the user grants or denies the permission. The value **3** means a system permission that cannot be changed.|
**Return value**
| Type| Description|
| :------------ | :---------------------------------- |
| Promise&lt;number&gt; | Promise instance used to return the result.|
**Example**
```
const AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let permissionFlag = 1;
let promise = AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag);
promise.then(data => {
console.log(`promise: data->${JSON.stringify(data)}`);
});
```
### revokeUserGrantedPermission
revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback&lt;number&gt;): void
Revokes a user granted permission given to an application. This method uses an asynchronous callback to return the result.
Required permission: ohos.permission.REVOKE_SENSITIVE_PERMISSIONS
**Parameters**
| Name| Type| Mandatory| Description|
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | Yes| ID of the application.|
| permissionName | string | Yes| Name of the permission to revoke.|
| permissionFlag | number | Yes| Permission flag. The value **1** means that a dialog box will still be displayed after the user grants or denies the permission. The value **2** means that no dialog box will be displayed after the user grants or denies the permission. The value **3** means a system permission that cannot be changed.|
| callback | AsyncCallback&lt;number&gt; | Yes| Callback used to return the result.|
**Example**
```
const AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS",permissionFlag, data => {
console.log(`callback: data->${JSON.stringify(data)}`);
});
```
### getPermissionFlags
getPermissionFlags(tokenID: number, permissionName: string): Promise&lt;number&gt;
Obtains the flags of the specified permission of a given application. This method uses a promise to return the result.
**Parameters**
| Name| Type| Mandatory| Description|
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | Yes| ID of the application.|
| permissionName | string | Yes| Name of the permission to query.|
**Return value**
| Type| Description|
| :------------ | :---------------------------------- |
| Promise&lt;number&gt; | Promise instance used to return the result.|
**Example**
```
const AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let promise = AtManager.getPermissionFlags(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
promise.then(data => {
console.log(`promise: data->${JSON.stringify(data)}`);
});
```
# XML-to-JavaScript Conversion<a name="EN-US_TOPIC_0000001196742158"></a> # XML-to-JavaScript Conversion
>![](public_sys-resources/icon-note.gif) **NOTE:** > **NOTE**
>The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version.
## Modules to Import<a name="s56d19203690d4782bfc74069abb6bd71"></a>
## Modules to Import
``` ```
import convertxml from '@ohos.convertxml'; import convertxml from '@ohos.convertxml';
``` ```
## Required Permissions<a name="section11257113618419"></a> ## System Capabilities
None
## ConvertXML<a name="section143808167355"></a>
### convert<a name="section518224213325"></a>
convert\(xml: string, options?: ConvertOptions\) : Object
Converts an XML text into a JavaScript object. SystemCapability.Utils.Lang
- Parameters
<a name="table114831131512"></a>
<table><thead align="left"><tr id="row914851141517"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p214819113159"><a name="p214819113159"></a><a name="p214819113159"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p1214921121519"><a name="p1214921121519"></a><a name="p1214921121519"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p11491711141512"><a name="p11491711141512"></a><a name="p11491711141512"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p171491011171512"><a name="p171491011171512"></a><a name="p171491011171512"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row91491211131519"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p114158183811"><a name="p114158183811"></a><a name="p114158183811"></a>xml</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1114918116154"><a name="p1114918116154"></a><a name="p1114918116154"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p314916118154"><a name="p314916118154"></a><a name="p314916118154"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p814951171516"><a name="p814951171516"></a><a name="p814951171516"></a>XML text to convert.</p>
</td>
</tr>
<tr id="row5149511191511"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p161491511151511"><a name="p161491511151511"></a><a name="p161491511151511"></a>options</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p15196201663916"><a name="p15196201663916"></a><a name="p15196201663916"></a><a href="#section843574515413">ConvertOptions</a></p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p61491811131518"><a name="p61491811131518"></a><a name="p61491811131518"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p17372181015412"><a name="p17372181015412"></a><a name="p17372181015412"></a>Settings of the convert operation.</p>
</td>
</tr>
</tbody>
</table>
- Return values ## ConvertXML
<a name="table115061181517"></a>
<table><thead align="left"><tr id="row1150161121510"><th class="cellrowborder" valign="top" width="17.01%" id="mcps1.1.3.1.1"><p id="p1015015113159"><a name="p1015015113159"></a><a name="p1015015113159"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="82.99%" id="mcps1.1.3.1.2"><p id="p2150211201512"><a name="p2150211201512"></a><a name="p2150211201512"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row17150811131514"><td class="cellrowborder" valign="top" width="17.01%" headers="mcps1.1.3.1.1 "><p id="p1150161110157"><a name="p1150161110157"></a><a name="p1150161110157"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="82.99%" headers="mcps1.1.3.1.2 "><p id="p51501611141518"><a name="p51501611141518"></a><a name="p51501611141518"></a>JavaScript object.</p>
</td>
</tr>
</tbody>
</table>
- Example ### convert
``` convert(xml: string, options?: ConvertOptions) : Object
var xml =
'<?xml version="1.0" encoding="utf-8"?>' +
'<note importance="high" logged="true">' +
' <title>Happy</title>' +
' <todo>Work</todo>' +
' <todo>Play</todo>' +
'</note>';
var conv = new convertxml.ConvertXML();
var result1 = conv.convert(xml, {trim: false, ignoreDeclaration: false});
console.log(result1)
```
Converts an XML text into a JavaScript object.
## ConvertOptions<a name="section843574515413"></a>
<a name="table468420114018"></a>
<table><thead align="left"><tr id="row1768412134017"><th class="cellrowborder" valign="top" width="17.549999999999997%" id="mcps1.1.5.1.1"><p id="p86842124013"><a name="p86842124013"></a><a name="p86842124013"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="16.03%" id="mcps1.1.5.1.2"><p id="p16848194014"><a name="p16848194014"></a><a name="p16848194014"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="11.16%" id="mcps1.1.5.1.3"><p id="p146848118406"><a name="p146848118406"></a><a name="p146848118406"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="55.26%" id="mcps1.1.5.1.4"><p id="p66848113409"><a name="p66848113409"></a><a name="p66848113409"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row96841013407"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p1285031713269"><a name="p1285031713269"></a><a name="p1285031713269"></a>trim</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p368421104017"><a name="p368421104017"></a><a name="p368421104017"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p17684818404"><a name="p17684818404"></a><a name="p17684818404"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p9845227114216"><a name="p9845227114216"></a><a name="p9845227114216"></a>Whether to trim the whitespace characters before and after the text. The default value is <strong id="b6928115525311"><a name="b6928115525311"></a><a name="b6928115525311"></a>false</strong>.</p>
</td>
</tr>
<tr id="row13751843114014"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p11938165615400"><a name="p11938165615400"></a><a name="p11938165615400"></a>ignoreDeclaration</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p67614394017"><a name="p67614394017"></a><a name="p67614394017"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p1676154394020"><a name="p1676154394020"></a><a name="p1676154394020"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p4833610345"><a name="p4833610345"></a><a name="p4833610345"></a>Whether to ignore the XML declaration. The default value is <strong id="b1986182720517"><a name="b1986182720517"></a><a name="b1986182720517"></a>false</strong>.</p>
</td>
</tr>
<tr id="row7473642142619"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p134733429261"><a name="p134733429261"></a><a name="p134733429261"></a>ignoreInstruction</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p1922562513291"><a name="p1922562513291"></a><a name="p1922562513291"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p10671250142915"><a name="p10671250142915"></a><a name="p10671250142915"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p142083683419"><a name="p142083683419"></a><a name="p142083683419"></a>Whether to ignore the XML processing instruction. The default value is <strong id="b9507112714198"><a name="b9507112714198"></a><a name="b9507112714198"></a>false</strong>.</p>
</td>
</tr>
<tr id="row3747194620264"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p12748134611264"><a name="p12748134611264"></a><a name="p12748134611264"></a>ignoreAttributes</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p1624022512911"><a name="p1624022512911"></a><a name="p1624022512911"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p107925092913"><a name="p107925092913"></a><a name="p107925092913"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p15291036153412"><a name="p15291036153412"></a><a name="p15291036153412"></a>Whether to print attributes across multiple lines and indent attributes. The default value is <strong id="b214910972014"><a name="b214910972014"></a><a name="b214910972014"></a>false</strong>.</p>
</td>
</tr>
<tr id="row42161882710"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p42141812713"><a name="p42141812713"></a><a name="p42141812713"></a>ignoreComment</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p152529252294"><a name="p152529252294"></a><a name="p152529252294"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p209114502296"><a name="p209114502296"></a><a name="p209114502296"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p8391736163418"><a name="p8391736163418"></a><a name="p8391736163418"></a>Whether to ignore element comments. The default value is <strong id="b12921132182012"><a name="b12921132182012"></a><a name="b12921132182012"></a>false</strong>.</p>
</td>
</tr>
<tr id="row147582020279"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p12476720122715"><a name="p12476720122715"></a><a name="p12476720122715"></a>ignoreCDATA</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p11264112552918"><a name="p11264112552918"></a><a name="p11264112552918"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p11102115013297"><a name="p11102115013297"></a><a name="p11102115013297"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p28461623102316"><a name="p28461623102316"></a><a name="p28461623102316"></a>Whether to ignore the element's CDATA information. The default value is <strong id="b8400141332617"><a name="b8400141332617"></a><a name="b8400141332617"></a>false</strong>.</p>
</td>
</tr>
<tr id="row36451623142711"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p464642310271"><a name="p464642310271"></a><a name="p464642310271"></a>ignoreDoctype</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p19275172515291"><a name="p19275172515291"></a><a name="p19275172515291"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p811405092919"><a name="p811405092919"></a><a name="p811405092919"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p462436183414"><a name="p462436183414"></a><a name="p462436183414"></a>Whether to ignore the element's <strong id="b1644365410213"><a name="b1644365410213"></a><a name="b1644365410213"></a>Doctype</strong> information. The default value is <strong id="b38201991221"><a name="b38201991221"></a><a name="b38201991221"></a>false</strong>.</p>
</td>
</tr>
<tr id="row156014265276"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p760132618270"><a name="p760132618270"></a><a name="p760132618270"></a>ignoreText</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p12286925122914"><a name="p12286925122914"></a><a name="p12286925122914"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p812517503295"><a name="p812517503295"></a><a name="p812517503295"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p67643663417"><a name="p67643663417"></a><a name="p67643663417"></a>Whether to ignore the element's text information. The default value is <strong id="b21731940182214"><a name="b21731940182214"></a><a name="b21731940182214"></a>false</strong>.</p>
</td>
</tr>
<tr id="row19613162818273"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p1361314282278"><a name="p1361314282278"></a><a name="p1361314282278"></a>declarationKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p9757637182919"><a name="p9757637182919"></a><a name="p9757637182919"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p1414014508297"><a name="p1414014508297"></a><a name="p1414014508297"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p1461412852710"><a name="p1461412852710"></a><a name="p1461412852710"></a>Name of the attribute key for <strong id="b7197102842416"><a name="b7197102842416"></a><a name="b7197102842416"></a>declaration</strong> in the output object. The default value is <strong id="b92387720242"><a name="b92387720242"></a><a name="b92387720242"></a>_declaration</strong>.</p>
</td>
</tr>
<tr id="row14361103817276"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p1736123832715"><a name="p1736123832715"></a><a name="p1736123832715"></a>instructionKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p11770173719299"><a name="p11770173719299"></a><a name="p11770173719299"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p41521150152912"><a name="p41521150152912"></a><a name="p41521150152912"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p336283815279"><a name="p336283815279"></a><a name="p336283815279"></a>Name of the attribute key for <strong id="b978125313248"><a name="b978125313248"></a><a name="b978125313248"></a>instruction</strong> in the output object. The default value is <strong id="b2459142611"><a name="b2459142611"></a><a name="b2459142611"></a>_instruction</strong>.</p>
</td>
</tr>
<tr id="row154132912288"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p7414898284"><a name="p7414898284"></a><a name="p7414898284"></a>attributesKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p8780133711290"><a name="p8780133711290"></a><a name="p8780133711290"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p121661150172920"><a name="p121661150172920"></a><a name="p121661150172920"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p7608142813588"><a name="p7608142813588"></a><a name="p7608142813588"></a>Name of the attribute key for <strong id="b9204185112618"><a name="b9204185112618"></a><a name="b9204185112618"></a>attributes</strong> in the output object. The default value is <strong id="b392414585262"><a name="b392414585262"></a><a name="b392414585262"></a>_attributes</strong>.</p>
</td>
</tr>
<tr id="row376713618283"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p1676846172816"><a name="p1676846172816"></a><a name="p1676846172816"></a>textKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p117908373291"><a name="p117908373291"></a><a name="p117908373291"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p217819501294"><a name="p217819501294"></a><a name="p217819501294"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p0344122145814"><a name="p0344122145814"></a><a name="p0344122145814"></a>Name of the attribute key for <strong id="b851743532718"><a name="b851743532718"></a><a name="b851743532718"></a>text</strong> in the output object. The default value is <strong id="b350917477273"><a name="b350917477273"></a><a name="b350917477273"></a>_text</strong>.</p>
</td>
</tr>
<tr id="row15340164284"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p353512166284"><a name="p353512166284"></a><a name="p353512166284"></a>cdataKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p1879923716291"><a name="p1879923716291"></a><a name="p1879923716291"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p20192150122911"><a name="p20192150122911"></a><a name="p20192150122911"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p475618155581"><a name="p475618155581"></a><a name="p475618155581"></a>Name of the attribute key for <strong id="b26841859132720"><a name="b26841859132720"></a><a name="b26841859132720"></a>CDATA</strong> in the output object. The default value is <strong id="b1586013185285"><a name="b1586013185285"></a><a name="b1586013185285"></a>_cdata</strong>.</p>
</td>
</tr>
<tr id="row15657131913280"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p0657619172820"><a name="p0657619172820"></a><a name="p0657619172820"></a>doctypeKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p1981023772916"><a name="p1981023772916"></a><a name="p1981023772916"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p820416508292"><a name="p820416508292"></a><a name="p820416508292"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p0979042154918"><a name="p0979042154918"></a><a name="p0979042154918"></a>Name of the attribute key for <strong id="b34439596306"><a name="b34439596306"></a><a name="b34439596306"></a>Doctype</strong> in the output object. The default value is <strong id="b022043913329"><a name="b022043913329"></a><a name="b022043913329"></a>_doctype</strong>.</p>
</td>
</tr>
<tr id="row1537652212285"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p53761822172816"><a name="p53761822172816"></a><a name="p53761822172816"></a>commentKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p14821103792913"><a name="p14821103792913"></a><a name="p14821103792913"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p1621525019292"><a name="p1621525019292"></a><a name="p1621525019292"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p748535519570"><a name="p748535519570"></a><a name="p748535519570"></a>Name of the attribute key for <strong id="b12533205423211"><a name="b12533205423211"></a><a name="b12533205423211"></a>comment</strong> in the output object. The default value is <strong id="b105967633313"><a name="b105967633313"></a><a name="b105967633313"></a>_comment</strong>.</p>
</td>
</tr>
<tr id="row1477410253283"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p577414255288"><a name="p577414255288"></a><a name="p577414255288"></a>parentKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p188311537202915"><a name="p188311537202915"></a><a name="p188311537202915"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p22272050172916"><a name="p22272050172916"></a><a name="p22272050172916"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p1599716428492"><a name="p1599716428492"></a><a name="p1599716428492"></a>Name of the attribute key for <strong id="b18469936103317"><a name="b18469936103317"></a><a name="b18469936103317"></a>parent</strong> in the output object. The default value is <strong id="b5277443163312"><a name="b5277443163312"></a><a name="b5277443163312"></a>_parent</strong>.</p>
</td>
</tr>
<tr id="row149011555192811"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p49016556281"><a name="p49016556281"></a><a name="p49016556281"></a>typeKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p483913752918"><a name="p483913752918"></a><a name="p483913752918"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p1723965042916"><a name="p1723965042916"></a><a name="p1723965042916"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p1568738115715"><a name="p1568738115715"></a><a name="p1568738115715"></a>Name of the attribute key for <strong id="b562120374361"><a name="b562120374361"></a><a name="b562120374361"></a>type</strong> in the output object. The default value is <strong id="b1182815436368"><a name="b1182815436368"></a><a name="b1182815436368"></a>_type</strong>.</p>
</td>
</tr>
<tr id="row8724165922815"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p7724459112819"><a name="p7724459112819"></a><a name="p7724459112819"></a>nameKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p584703718296"><a name="p584703718296"></a><a name="p584703718296"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p3664145120292"><a name="p3664145120292"></a><a name="p3664145120292"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p159295216567"><a name="p159295216567"></a><a name="p159295216567"></a>Name of the attribute key for <strong id="b959742613717"><a name="b959742613717"></a><a name="b959742613717"></a>name</strong> in the output object. The default value is <strong id="b2605034203717"><a name="b2605034203717"></a><a name="b2605034203717"></a>_name</strong>.</p>
</td>
</tr>
<tr id="row939021212917"><td class="cellrowborder" valign="top" width="17.549999999999997%" headers="mcps1.1.5.1.1 "><p id="p17390161272918"><a name="p17390161272918"></a><a name="p17390161272918"></a>elementsKey</p>
</td>
<td class="cellrowborder" valign="top" width="16.03%" headers="mcps1.1.5.1.2 "><p id="p168568373295"><a name="p168568373295"></a><a name="p168568373295"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="11.16%" headers="mcps1.1.5.1.3 "><p id="p36771451152914"><a name="p36771451152914"></a><a name="p36771451152914"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.1.5.1.4 "><p id="p62794384910"><a name="p62794384910"></a><a name="p62794384910"></a>Name of the attribute key for <strong id="b116698498376"><a name="b116698498376"></a><a name="b116698498376"></a>elements</strong> in the output object. The default value is <strong id="b1054145814374"><a name="b1054145814374"></a><a name="b1054145814374"></a>_elements</strong>.</p>
</td>
</tr>
</tbody>
</table>
- Parameters
| Name| Type| Mandatory| Description|
| ------- | --------------------------------- | ---- | ------------------ |
| xml | string | Yes| XML text to convert.|
| options | [ConvertOptions](#convertoptions) | No| Settings of the convert operation.|
- Return value
| Type| Description|
| ------ | ---------------------------- |
| string | JavaScript object.|
- Example
```
var xml =
'<?xml version="1.0" encoding="utf-8"?>' +
'<note importance="high" logged="true">' +
' <title>Happy</title>' +
' <todo>Work</todo>' +
' <todo>Play</todo>' +
'</note>';
var conv = new convertxml.ConvertXML();
var result1 = conv.convert(xml, {trim: false, ignoreDeclaration: false});
console.log(result1)
```
## ConvertOptions
| Name| Type| Mandatory| Description|
| ----------------- | -------- | ---- | ----------------------------------------------------------- |
| trim | boolean | No| Whether to trim the whitespace characters before and after the text. The default value is **false**.|
| ignoreDeclaration | boolean | No| Whether to ignore the XML declaration. The default value is **false**.|
| ignoreInstruction | boolean | No| Whether to ignore the XML processing instruction. The default value is **false**.|
| ignoreAttributes | boolean | No| Whether to print attributes across multiple lines and indent attributes. The default value is **false**.|
| ignoreComment | boolean | No| Whether to ignore element comments. The default value is **false**.|
| ignoreCDATA | boolean | No| Whether to ignore the element's CDATA information. The default value is **false**.|
| ignoreDoctype | boolean | No| Whether to ignore the element's Doctype information. The default value is **false**.|
| ignoreText | boolean | No| Whether to ignore the element's text information. The default value is **false**.|
| declarationKey | string | No| Name of the attribute key for **declaration** in the output object. The default value is **_declaration**.|
| instructionKey | string | No| Name of the attribute key for **instruction** in the output object. The default value is **_instruction**.|
| attributesKey | string | No| Name of the attribute key for **attributes** in the output object. The default value is **_attributes**.|
| textKey | string | No| Name of the attribute key for **text** in the output object. The default value is **_text**.|
| cdataKey | string | No| Name of the attribute key for **CDATA** in the output object. The default value is **_cdata**.|
| doctypeKey | string | No| Name of the attribute key for **Doctype** in the output object. The default value is **_doctype**.|
| commentKey | string | No| Name of the attribute key for **comment** in the output object. The default value is **_comment**.|
| parentKey | string | No| Name of the attribute key for **parent** in the output object. The default value is **_parent**.|
| typeKey | string | No| Name of the attribute key for **type** in the output object. The default value is **_type**.|
| nameKey | string | No| Name of the attribute key for **name** in the output object. The default value is **_name**.|
| elementsKey | string | No| Name of the attribute key for **elements** in the output object. The default value is **_elements**.|
...@@ -44,13 +44,15 @@ querySelfFaultLog(faultType: FaultType, callback: AsyncCallback&lt;Array&lt;Faul ...@@ -44,13 +44,15 @@ querySelfFaultLog(faultType: FaultType, callback: AsyncCallback&lt;Array&lt;Faul
Obtains the fault information about the current process. This method uses a callback to return the fault information array obtained, which contains a maximum of 10 pieces of fault information. Obtains the fault information about the current process. This method uses a callback to return the fault information array obtained, which contains a maximum of 10 pieces of fault information.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| faultType | [FaultType](#faulttype) | Yes| Fault type.| | -------- | -------- | -------- | -------- |
| callback | AsyncCallbackArray&lt;Array&lt;[FaultLogInfo](#faultloginfo)&gt;&gt; | Yes| Callback used to return the fault information array. <br/>The value is the fault information array obtained. If the value is **undefined**, an exception occurs during the information retrieval. In this case, an error string will be returned. | faultType | [FaultType](#faulttype) | Yes| Fault type.|
| callback | AsyncCallbackArray&lt;Array&lt;[FaultLogInfo](#faultloginfo)&gt;&gt; | Yes| Callback used to return the fault information array. <br/>The value is the fault information array obtained. If the value is **undefined**, an exception occurs during the information retrieval. In this case, an error string will be returned.
**Example**
- Example
``` ```
function queryFaultLogCallback(error, value) { function queryFaultLogCallback(error, value) {
if (error) { if (error) {
...@@ -80,17 +82,20 @@ querySelfFaultLog(faultType: FaultType) : Promise&lt;Array&lt;FaultLogInfo&gt;&g ...@@ -80,17 +82,20 @@ querySelfFaultLog(faultType: FaultType) : Promise&lt;Array&lt;FaultLogInfo&gt;&g
Obtains the fault information about the current process. This method uses a promise to return the fault information array obtained, which contains a maximum of 10 pieces of fault information. Obtains the fault information about the current process. This method uses a promise to return the fault information array obtained, which contains a maximum of 10 pieces of fault information.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| faultType | [FaultType](#faulttype) | Yes| Fault type.| | -------- | -------- | -------- | -------- |
| faultType | [FaultType](#faulttype) | Yes| Fault type.|
**Return value**
| Type| Description|
| -------- | -------- |
| Promise&lt;Array&lt;[FaultLogInfo](#faultloginfo)&gt;&gt; | Promise used to return the fault information array. You can obtain the fault information instance in its **then()** method or use **await**. <br/>The value is the fault information array obtained. If the value is **undefined**, an exception occurs during the information retrieval.|
- Return value **Example**
| Type| Description|
| -------- | -------- |
| Promise&lt;Array&lt;[FaultLogInfo](#faultloginfo)&gt;&gt; | Promise used to return the fault information array. You can obtain the fault information instance in its **then()** method or use **await**. <br/>The value is the fault information array obtained. If the value is **undefined**, an exception occurs during the information retrieval.|
- Example
``` ```
let value = await faultLogger.querySelfFaultLog(faultlogger.FaultType.JS_CRASH); let value = await faultLogger.querySelfFaultLog(faultlogger.FaultType.JS_CRASH);
if (value) { if (value) {
......
# Obtaining Process Information<a name="EN-US_TOPIC_0000001237480785"></a> # Obtaining Process Information
>![](../../public_sys-resources/icon-note.gif) **NOTE:** > ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
>The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version.
## Modules to Import<a name="s56d19203690d4782bfc74069abb6bd71"></a>
## Modules to Import
``` ```
import process from '@ohos.process'; import process from '@ohos.process';
``` ```
## Required Permissions<a name="section11257113618419"></a> ## System Capabilities
None SystemCapability.Utils.Lang
## Attributes<a name="section3317114914546"></a> ## Attributes
<a name="table11454105725410"></a> | Name| Type| Readable| Writable| Description|
<table><thead align="left"><tr id="row7455457115414"><th class="cellrowborder" valign="top" width="14.399999999999999%" id="mcps1.1.6.1.1"><p id="p84551257175410"><a name="p84551257175410"></a><a name="p84551257175410"></a>Name</p> | -------- | -------- | -------- | -------- | -------- |
</th> | egid | number | Yes| No| Effective group identifier (EGID) of a process.|
<th class="cellrowborder" valign="top" width="21.16%" id="mcps1.1.6.1.2"><p id="p134557578549"><a name="p134557578549"></a><a name="p134557578549"></a>Type</p> | euid | number | Yes| No| Effective user identifier (EUID) of a process.|
</th> | gid | number | Yes| No| Group identifier (GID) of a process.|
<th class="cellrowborder" valign="top" width="8.39%" id="mcps1.1.6.1.3"><p id="p34551957175411"><a name="p34551957175411"></a><a name="p34551957175411"></a>Readable</p> | uid | number | Yes| No| User identifier (UID) of a process.|
</th> | groups | number[] | Yes| No| Array with supplementary group IDs.|
<th class="cellrowborder" valign="top" width="8.110000000000001%" id="mcps1.1.6.1.4"><p id="p2045510572545"><a name="p2045510572545"></a><a name="p2045510572545"></a>Writable</p> | pid | number | Yes| No| Process ID (PID) of a process.|
</th> | ppid | number | Yes| No| Parent process ID (PPID) of a process.|
<th class="cellrowborder" valign="top" width="47.94%" id="mcps1.1.6.1.5"><p id="p145575714544"><a name="p145575714544"></a><a name="p145575714544"></a>Description</p> | tid<sup>8+</sup> | number | Yes| No| Thread ID (TID) of a process.|
</th>
</tr>
</thead> ## ChildProcess
<tbody><tr id="row16455135745414"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p17455657165416"><a name="p17455657165416"></a><a name="p17455657165416"></a>egid</p>
</td> Allows a process to obtain the standard input and output of its child processes, send signals, and close its child processes.
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p1973158115511"><a name="p1973158115511"></a><a name="p1973158115511"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p84554571547"><a name="p84554571547"></a><a name="p84554571547"></a>Yes</p> ### Attributes
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p114551657185413"><a name="p114551657185413"></a><a name="p114551657185413"></a>No</p> | Name| Type| Readable| Writable| Description|
</td> | -------- | -------- | -------- | -------- | -------- |
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p14455857115415"><a name="p14455857115415"></a><a name="p14455857115415"></a>Effective group identifier (EGID) of a process.</p> | pid | number | Yes| No| PID of the child process.|
</td> | ppid | number | Yes| No| PPID of the child process.|
</tr> | exitCode | number | Yes| No| Exit code of the child process.|
<tr id="row184551357135416"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p8455135711544"><a name="p8455135711544"></a><a name="p8455135711544"></a>euid</p> | killed | boolean | Yes| No| Whether the parent process successfully sends a signal to the child process to terminate it.|
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p6943158185519"><a name="p6943158185519"></a><a name="p6943158185519"></a>number</p>
</td> ### wait
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p3455185745417"><a name="p3455185745417"></a><a name="p3455185745417"></a>Yes</p>
</td> wait(): Promise&lt;number&gt;
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p2045585717548"><a name="p2045585717548"></a><a name="p2045585717548"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p94821125817"><a name="p94821125817"></a><a name="p94821125817"></a>Effective user identifier (EUID) of a process.</p>
</td>
</tr>
<tr id="row3455357115411"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p1345585785412"><a name="p1345585785412"></a><a name="p1345585785412"></a>gid</p>
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p136661259155511"><a name="p136661259155511"></a><a name="p136661259155511"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p04561457185415"><a name="p04561457185415"></a><a name="p04561457185415"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p64561757195414"><a name="p64561757195414"></a><a name="p64561757195414"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p6455857135420"><a name="p6455857135420"></a><a name="p6455857135420"></a>Group identifier (GID) of a process.</p>
</td>
</tr>
<tr id="row1456857195411"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p1145614577542"><a name="p1145614577542"></a><a name="p1145614577542"></a>uid</p>
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p105921606564"><a name="p105921606564"></a><a name="p105921606564"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p16456125755417"><a name="p16456125755417"></a><a name="p16456125755417"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p3456257165416"><a name="p3456257165416"></a><a name="p3456257165416"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p1545610579549"><a name="p1545610579549"></a><a name="p1545610579549"></a>User identifier (UID) of a process.</p>
</td>
</tr>
<tr id="row134569575540"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p5456155775414"><a name="p5456155775414"></a><a name="p5456155775414"></a>groups</p>
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p1094449195614"><a name="p1094449195614"></a><a name="p1094449195614"></a>number[]</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p1745695725412"><a name="p1745695725412"></a><a name="p1745695725412"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p19456195718542"><a name="p19456195718542"></a><a name="p19456195718542"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p12456257145411"><a name="p12456257145411"></a><a name="p12456257145411"></a>Array with supplementary group IDs.</p>
</td>
</tr>
<tr id="row2456155735410"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p145695716545"><a name="p145695716545"></a><a name="p145695716545"></a>pid</p>
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p917781619565"><a name="p917781619565"></a><a name="p917781619565"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p145625711546"><a name="p145625711546"></a><a name="p145625711546"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p17456105745419"><a name="p17456105745419"></a><a name="p17456105745419"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p1545612577543"><a name="p1545612577543"></a><a name="p1545612577543"></a>Process ID (PID) of a process.</p>
</td>
</tr>
<tr id="row195001712125615"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p0501171213567"><a name="p0501171213567"></a><a name="p0501171213567"></a>ppid</p>
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p69521816125613"><a name="p69521816125613"></a><a name="p69521816125613"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p550171217569"><a name="p550171217569"></a><a name="p550171217569"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p19501612175616"><a name="p19501612175616"></a><a name="p19501612175616"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p2050111216567"><a name="p2050111216567"></a><a name="p2050111216567"></a>Parent process ID (PPID) of a process.</p>
</td>
</tr>
<tr id="row383373231019"><td class="cellrowborder" valign="top" width="14.399999999999999%" headers="mcps1.1.6.1.1 "><p id="p28339326100"><a name="p28339326100"></a><a name="p28339326100"></a>tid<sup id="sup515125418117"><a name="sup515125418117"></a><a name="sup515125418117"></a>8+</sup></p>
</td>
<td class="cellrowborder" valign="top" width="21.16%" headers="mcps1.1.6.1.2 "><p id="p1083318320102"><a name="p1083318320102"></a><a name="p1083318320102"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="8.39%" headers="mcps1.1.6.1.3 "><p id="p983433218101"><a name="p983433218101"></a><a name="p983433218101"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="8.110000000000001%" headers="mcps1.1.6.1.4 "><p id="p58341432121020"><a name="p58341432121020"></a><a name="p58341432121020"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="47.94%" headers="mcps1.1.6.1.5 "><p id="p16834532191011"><a name="p16834532191011"></a><a name="p16834532191011"></a>Thread ID (TID) of a process.</p>
</td>
</tr>
</tbody>
</table>
## ChildProcess<a name="section6521387200"></a>
Provides methods for a process to obtain the standard input and output of its child processes, send signals, and close its child processes.
### Attributes<a name="section18482944113517"></a>
<a name="table20482104463514"></a>
<table><thead align="left"><tr id="row1348214444357"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p184822443351"><a name="p184822443351"></a><a name="p184822443351"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p1648254415353"><a name="p1648254415353"></a><a name="p1648254415353"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p9482124413355"><a name="p9482124413355"></a><a name="p9482124413355"></a>Readable</p>
</th>
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p3482124493515"><a name="p3482124493515"></a><a name="p3482124493515"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p12482104483513"><a name="p12482104483513"></a><a name="p12482104483513"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row148254473513"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p188761547113820"><a name="p188761547113820"></a><a name="p188761547113820"></a>pid</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p3482124417356"><a name="p3482124417356"></a><a name="p3482124417356"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p16483194443514"><a name="p16483194443514"></a><a name="p16483194443514"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p64838449351"><a name="p64838449351"></a><a name="p64838449351"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p7678105615402"><a name="p7678105615402"></a><a name="p7678105615402"></a>PID of the child process.</p>
</td>
</tr>
<tr id="row1483164414352"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p17483184419352"><a name="p17483184419352"></a><a name="p17483184419352"></a>ppid</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p9483184410355"><a name="p9483184410355"></a><a name="p9483184410355"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p1348384415359"><a name="p1348384415359"></a><a name="p1348384415359"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1448312449355"><a name="p1448312449355"></a><a name="p1448312449355"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p19949102034110"><a name="p19949102034110"></a><a name="p19949102034110"></a>PPID of the child process.</p>
</td>
</tr>
<tr id="row13483164419353"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p10260103644215"><a name="p10260103644215"></a><a name="p10260103644215"></a>exitCode</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p4483174443517"><a name="p4483174443517"></a><a name="p4483174443517"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p1483134419353"><a name="p1483134419353"></a><a name="p1483134419353"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p648354483510"><a name="p648354483510"></a><a name="p648354483510"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p348319442351"><a name="p348319442351"></a><a name="p348319442351"></a>Exit code of the child process.</p>
</td>
</tr>
<tr id="row1818591014310"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p133731715204318"><a name="p133731715204318"></a><a name="p133731715204318"></a>killed</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p20186181084318"><a name="p20186181084318"></a><a name="p20186181084318"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p61861510174314"><a name="p61861510174314"></a><a name="p61861510174314"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p6186151034317"><a name="p6186151034317"></a><a name="p6186151034317"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p518611015431"><a name="p518611015431"></a><a name="p518611015431"></a>Whether the parent process successfully sends a signal to the child process to terminate it.</p>
</td>
</tr>
</tbody>
</table>
### wait<a name="section9594134194318"></a>
wait\(\): Promise<number\>
Waits until the child process ends. This method uses a promise to return the exit code of the child process. Waits until the child process ends. This method uses a promise to return the exit code of the child process.
- Return values **Return value**
<a name="table37864874412"></a> | Type| Description|
<table><thead align="left"><tr id="row1778638104418"><th class="cellrowborder" valign="top" width="25.790000000000003%" id="mcps1.1.3.1.1"><p id="p1778613834415"><a name="p1778613834415"></a><a name="p1778613834415"></a>Type</p> | -------- | -------- |
</th> | Promise&lt;number&gt; | Promise used to return the exit code of the child process.|
<th class="cellrowborder" valign="top" width="74.21%" id="mcps1.1.3.1.2"><p id="p6786118124414"><a name="p6786118124414"></a><a name="p6786118124414"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row678611818445"><td class="cellrowborder" valign="top" width="25.790000000000003%" headers="mcps1.1.3.1.1 "><p id="p731033633210"><a name="p731033633210"></a><a name="p731033633210"></a>Promise&lt;number&gt;</p>
</td>
<td class="cellrowborder" valign="top" width="74.21%" headers="mcps1.1.3.1.2 "><p id="p6786118144419"><a name="p6786118144419"></a><a name="p6786118144419"></a>Promise used to return the exit code of the child process.</p>
</td>
</tr>
</tbody>
</table>
- Example **Example**
``` ```
var child = process.runCmd('ls'); var child = process.runCmd('ls');
var result = child.wait(); var result = child.wait();
result.then(val=>{ result.then(val=>{
console.log("result = " + val); console.log("result = " + val);
}) })
``` ```
### getOutput<a name="section1732152812716"></a> ### getOutput
getOutput\(\): Promise<Uint8Array\> getOutput(): Promise&lt;Uint8Array&gt;
Obtains the standard output of the child process. Obtains the standard output of the child process.
- Return values **Return value**
<a name="table034112818718"></a> | Type| Description|
<table><thead align="left"><tr id="row10341728976"><th class="cellrowborder" valign="top" width="30.98%" id="mcps1.1.3.1.1"><p id="p234182810716"><a name="p234182810716"></a><a name="p234182810716"></a>Type</p> | -------- | -------- |
</th> | Promise&lt;Uint8Array&gt; | Promise used to return the standard output in a Uint8Array.|
<th class="cellrowborder" valign="top" width="69.02000000000001%" id="mcps1.1.3.1.2"><p id="p83412820713"><a name="p83412820713"></a><a name="p83412820713"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row183552814711"><td class="cellrowborder" valign="top" width="30.98%" headers="mcps1.1.3.1.1 "><p id="p035328878"><a name="p035328878"></a><a name="p035328878"></a>Promise&lt;Uint8Array&gt;</p>
</td>
<td class="cellrowborder" valign="top" width="69.02000000000001%" headers="mcps1.1.3.1.2 "><p id="p83512284717"><a name="p83512284717"></a><a name="p83512284717"></a>Promise used to return the standard output in a Uint8Array.</p>
</td>
</tr>
</tbody>
</table>
- Example **Example**
``` ```
var child = process.runCmd('ls'); var child = process.runCmd('ls');
var result = child.wait(); var result = child.wait();
child.getOutput.then(val=>{ child.getOutput.then(val=>{
console.log("child.getOutput = " + val); console.log("child.getOutput = " + val);
}) })
``` ```
### getErrorOutput<a name="section14671040141315"></a> ### getErrorOutput
getErrorOutput\(\): Promise<Uint8Array\> getErrorOutput(): Promise&lt;Uint8Array&gt;
Obtains the standard error output of the child process. Obtains the standard error output of the child process.
- Return values **Return value**
<a name="table76721340131314"></a> | Type| Description|
<table><thead align="left"><tr id="row46721040191315"><th class="cellrowborder" valign="top" width="30.36%" id="mcps1.1.3.1.1"><p id="p3672140111313"><a name="p3672140111313"></a><a name="p3672140111313"></a>Type</p> | -------- | -------- |
</th> | Promise&lt;Uint8Array&gt; | Promise used to return the standard error output in a Uint8Array.|
<th class="cellrowborder" valign="top" width="69.64%" id="mcps1.1.3.1.2"><p id="p967214407133"><a name="p967214407133"></a><a name="p967214407133"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row767214407135"><td class="cellrowborder" valign="top" width="30.36%" headers="mcps1.1.3.1.1 "><p id="p767294017137"><a name="p767294017137"></a><a name="p767294017137"></a>Promise&lt;Uint8Array&gt;</p>
</td>
<td class="cellrowborder" valign="top" width="69.64%" headers="mcps1.1.3.1.2 "><p id="p9672144081314"><a name="p9672144081314"></a><a name="p9672144081314"></a>Promise used to return the standard error output in a Uint8Array.</p>
</td>
</tr>
</tbody>
</table>
- Example **Example**
``` ```
var child = process.runCmd('madir test.text'); var child = process.runCmd('madir test.text');
var result = child.wait(); var result = child.wait();
child.getErrorOutput.then(val=>{ child.getErrorOutput.then(val=>{
console.log("child.getErrorOutput= " + val); console.log("child.getErrorOutput= " + val);
}) })
``` ```
### close<a name="section28221257121518"></a> ### close
close\(\): void close(): void
Closes the child process in running. Closes the child process in running.
- Example **Example**
``` ```
var child = process.runCmd('sleep 5; ls'); var child = process.runCmd('sleep 5; ls');
child.close(); child.close();
``` ```
### kill<a name="section9528134162114"></a> ### kill
kill\(signal: number | string\): void kill(signal: number | string): void
Sends a signal to the specified child process to terminate it. Sends a signal to the specified child process to terminate it.
- Parameters **Parameters**
<a name="table157841181443"></a>
<table><thead align="left"><tr id="row10784188164412"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p167847814420"><a name="p167847814420"></a><a name="p167847814420"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="26.71%" id="mcps1.1.5.1.2"><p id="p078418815441"><a name="p078418815441"></a><a name="p078418815441"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="12.879999999999999%" id="mcps1.1.5.1.3"><p id="p14784082449"><a name="p14784082449"></a><a name="p14784082449"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="45.59%" id="mcps1.1.5.1.4"><p id="p1878468104412"><a name="p1878468104412"></a><a name="p1878468104412"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row27851385447"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p2785284442"><a name="p2785284442"></a><a name="p2785284442"></a>signal</p>
</td>
<td class="cellrowborder" valign="top" width="26.71%" headers="mcps1.1.5.1.2 "><p id="p47857813448"><a name="p47857813448"></a><a name="p47857813448"></a>number | string</p>
</td>
<td class="cellrowborder" valign="top" width="12.879999999999999%" headers="mcps1.1.5.1.3 "><p id="p147859815443"><a name="p147859815443"></a><a name="p147859815443"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="45.59%" headers="mcps1.1.5.1.4 "><p id="p2078588194411"><a name="p2078588194411"></a><a name="p2078588194411"></a>Number or string to send.</p>
</td>
</tr>
</tbody>
</table>
- Example | Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| signal | number&nbsp;\|&nbsp;string | Yes| Number or string to send.|
``` **Example**
var child = process.runCmd('sleep 5; ls');
child.kill(9);
```
```
var child = process.runCmd('sleep 5; ls');
child.kill(9);
```
## process.isIsolatedProcess<sup>8+</sup><a name="section18531656131211"></a>
isIsolatedProcess\(\): boolean ## process.isIsolatedProcess<sup>8+</sup>
Checks whether the process is isolated. isIsolatedProcess(): boolean
- Return values Checks whether this process is isolated.
<a name="table16748145772610"></a> **Return value**
<table><thead align="left"><tr id="row13748857132613"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p5748125722616"><a name="p5748125722616"></a><a name="p5748125722616"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p8748155719267"><a name="p8748155719267"></a><a name="p8748155719267"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row16748135742613"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p6748757162618"><a name="p6748757162618"></a><a name="p6748757162618"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p16749057182614"><a name="p16749057182614"></a><a name="p16749057182614"></a>Returns <strong id="b1257840101118"><a name="b1257840101118"></a><a name="b1257840101118"></a>true</strong> if the process is isolated; returns <strong id="b295119021219"><a name="b295119021219"></a><a name="b295119021219"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
| Type| Description|
| -------- | -------- |
| boolean | Returns **true** if the process is isolated; returns **false** otherwise.|
- Example **Example**
``` ```
var result = process.isIsolatedProcess(); var result = process.isIsolatedProcess();
``` ```
## process.isAppUid<sup>8+</sup><a name="section3483872142"></a> ## process.isAppUid<sup>8+</sup>
isAppUid\(v:number\): boolean isAppUid(v:number): boolean
Checks whether a UID belongs to this app. Checks whether a UID belongs to this app.
- Parameters **Parameters**
<a name="table1130031918288"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row5300181932814"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p13300131917284"><a name="p13300131917284"></a><a name="p13300131917284"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | v | number | Yes| UID.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p12301131912284"><a name="p12301131912284"></a><a name="p12301131912284"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p13011819122814"><a name="p13011819122814"></a><a name="p13011819122814"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p10301141922817"><a name="p10301141922817"></a><a name="p10301141922817"></a>Description</p> | -------- | -------- |
</th> | boolean | Returns **true** if the UID is the app's UID; returns **false** otherwise.|
</tr>
</thead> **Example**
<tbody><tr id="row1630116194285"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p438853552813"><a name="p438853552813"></a><a name="p438853552813"></a>v</p>
</td> ```
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p530151916283"><a name="p530151916283"></a><a name="p530151916283"></a>number</p> var result = process.isAppUid(688);
</td> ```
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p12301819172811"><a name="p12301819172811"></a><a name="p12301819172811"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p9302111962811"><a name="p9302111962811"></a><a name="p9302111962811"></a>UID.</p> ## process.is64Bit<sup>8+</sup>
</td>
</tr> is64Bit(): boolean
</tbody>
</table> Checks whether this process is running in a 64-bit environment.
- Return values **Return value**
<a name="table193021119132815"></a> | Type| Description|
<table><thead align="left"><tr id="row630281915283"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p13303619192811"><a name="p13303619192811"></a><a name="p13303619192811"></a>Type</p> | -------- | -------- |
</th> | boolean | Returns **true** if the process is running in a 64-bit environment; returns **false** otherwise.|
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p93034196281"><a name="p93034196281"></a><a name="p93034196281"></a>Description</p>
</th> **Example**
</tr>
</thead> ```
<tbody><tr id="row0303201917288"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p93031719172815"><a name="p93031719172815"></a><a name="p93031719172815"></a>boolean</p> var ressult = process.is64Bit();
</td> ```
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p2044064714286"><a name="p2044064714286"></a><a name="p2044064714286"></a>Returns <strong id="b11496154718238"><a name="b11496154718238"></a><a name="b11496154718238"></a>true</strong> if the UID is the app's UID; returns <strong id="b1549674712316"><a name="b1549674712316"></a><a name="b1549674712316"></a>false</strong> otherwise.</p>
</td>
</tr> ## process.getUidForName<sup>8+</sup>
</tbody>
</table> getUidForName(v:string): number
- Example
```
var result = process.isAppUid(688);
```
## process.is64Bit<sup>8+</sup><a name="section19430255141411"></a>
is64Bit\(\): boolean
Checks whether the operating environment is of 64-bit.
- Return values
<a name="table18430115511149"></a>
<table><thead align="left"><tr id="row4430165512148"><th class="cellrowborder" valign="top" width="21.02%" id="mcps1.1.3.1.1"><p id="p94301555141"><a name="p94301555141"></a><a name="p94301555141"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="78.97999999999999%" id="mcps1.1.3.1.2"><p id="p6430185515144"><a name="p6430185515144"></a><a name="p6430185515144"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row9430125531413"><td class="cellrowborder" valign="top" width="21.02%" headers="mcps1.1.3.1.1 "><p id="p14430655121410"><a name="p14430655121410"></a><a name="p14430655121410"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="78.97999999999999%" headers="mcps1.1.3.1.2 "><p id="p943075571418"><a name="p943075571418"></a><a name="p943075571418"></a>Returns <strong id="b542211113264"><a name="b542211113264"></a><a name="b542211113264"></a>true</strong> if the operating environment is of 64-bit; returns <strong id="b1142231110265"><a name="b1142231110265"></a><a name="b1142231110265"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var ressult = process.is64Bit();
```
## process.getUidForName<sup>8+</sup><a name="section1727712617154"></a>
getUidForName\(v:string\): number
Obtains the process UID based on the process name. Obtains the process UID based on the process name.
- Parameters **Parameters**
<a name="table10277142671518"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row1727719261158"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p17277122616159"><a name="p17277122616159"></a><a name="p17277122616159"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | v | string | Yes| Name of a process.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p11277172619159"><a name="p11277172619159"></a><a name="p11277172619159"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p1127732661515"><a name="p1127732661515"></a><a name="p1127732661515"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p102775264152"><a name="p102775264152"></a><a name="p102775264152"></a>Description</p> | -------- | -------- |
</th> | number | Process UID.|
</tr>
</thead> **Example**
<tbody><tr id="row16277122631517"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p192771126131510"><a name="p192771126131510"></a><a name="p192771126131510"></a>v</p>
</td> ```
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p827814265151"><a name="p827814265151"></a><a name="p827814265151"></a>string</p> var pres = process.getUidForName("tool")
</td> ```
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p122783261158"><a name="p122783261158"></a><a name="p122783261158"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p22781526111515"><a name="p22781526111515"></a><a name="p22781526111515"></a>Process name.</p> ## process.getThreadPriority<sup>8+</sup>
</td>
</tr> getThreadPriority(v:number): number
</tbody>
</table>
- Return values
<a name="table12278152615151"></a>
<table><thead align="left"><tr id="row1527842610155"><th class="cellrowborder" valign="top" width="21.02%" id="mcps1.1.3.1.1"><p id="p182781267158"><a name="p182781267158"></a><a name="p182781267158"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="78.97999999999999%" id="mcps1.1.3.1.2"><p id="p52781826161511"><a name="p52781826161511"></a><a name="p52781826161511"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row19278112681516"><td class="cellrowborder" valign="top" width="21.02%" headers="mcps1.1.3.1.1 "><p id="p927822691514"><a name="p927822691514"></a><a name="p927822691514"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="78.97999999999999%" headers="mcps1.1.3.1.2 "><p id="p18278426161512"><a name="p18278426161512"></a><a name="p18278426161512"></a>Process UID.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var pres = process.getUidForName("tool")
```
## process.getThreadPriority<sup>8+</sup><a name="section10468310163512"></a>
getThreadPriority\(v:number\): number
Obtains the thread priority based on the specified TID. Obtains the thread priority based on the specified TID.
- Parameters **Parameters**
<a name="table1546841011357"></a>
<table><thead align="left"><tr id="row14469111063515"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p346951013359"><a name="p346951013359"></a><a name="p346951013359"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p246918103351"><a name="p246918103351"></a><a name="p246918103351"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p6469171013513"><a name="p6469171013513"></a><a name="p6469171013513"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1446917101352"><a name="p1446917101352"></a><a name="p1446917101352"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row5469910143518"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1247011033512"><a name="p1247011033512"></a><a name="p1247011033512"></a>v</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p18470171083516"><a name="p18470171083516"></a><a name="p18470171083516"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p7470110113512"><a name="p7470110113512"></a><a name="p7470110113512"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1327223011365"><a name="p1327223011365"></a><a name="p1327223011365"></a>TID.</p>
</td>
</tr>
</tbody>
</table>
- Return values
<a name="table1947018103358"></a>
<table><thead align="left"><tr id="row134713108353"><th class="cellrowborder" valign="top" width="21.02%" id="mcps1.1.3.1.1"><p id="p84712101359"><a name="p84712101359"></a><a name="p84712101359"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="78.97999999999999%" id="mcps1.1.3.1.2"><p id="p44711910103519"><a name="p44711910103519"></a><a name="p44711910103519"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row154710105354"><td class="cellrowborder" valign="top" width="21.02%" headers="mcps1.1.3.1.1 "><p id="p1447181023517"><a name="p1447181023517"></a><a name="p1447181023517"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="78.97999999999999%" headers="mcps1.1.3.1.2 "><p id="p8471110183520"><a name="p8471110183520"></a><a name="p8471110183520"></a>Priority of the thread.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var tid = process.tid;
var pres = process.getThreadPriority(tid);
```
## process.getStartRealtime<sup>8+</sup><a name="section1336514287167"></a>
getStartRealtime\(\) :number
Obtains the duration, in milliseconds, from the time the system starts to the time the process starts. | Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| v | number | Yes| TID.|
- Return values **Return value**
<a name="table191971559142420"></a> | Type| Description|
<table><thead align="left"><tr id="row1119785919245"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p2197115962417"><a name="p2197115962417"></a><a name="p2197115962417"></a>Type</p> | -------- | -------- |
</th> | number | Priority of the thread.|
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p1419713599243"><a name="p1419713599243"></a><a name="p1419713599243"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row10198175982415"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p719855942415"><a name="p719855942415"></a><a name="p719855942415"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p1119875918248"><a name="p1119875918248"></a><a name="p1119875918248"></a>Time duration obtained.</p>
</td>
</tr>
</tbody>
</table>
**Example**
- Example ```
var tid = process.getTid();
var pres = process.getThreadPriority(tid);
```
```
var realtime = process.getStartRealtime();
```
## process.getStartRealtime<sup>8+</sup>
getStartRealtime() :number
Obtains the duration, in milliseconds, from the time the system starts to the time the process starts.
## process.getPastCputime<sup>8+</sup><a name="section93991533201718"></a> **Return value**
| Type| Description|
| -------- | -------- |
| number | Duration obtained.|
**Example**
```
var realtime = process.getStartRealtime();
```
getPastCputime\(\) :number ## process.getPastCputime<sup>8+</sup>
Obtains the CPU time \(in milliseconds\) from the time the process starts to the current time. getPastCputime() :number
- Return values Obtains the CPU time (in milliseconds) from the time the process starts to the current time.
<a name="table935012126260"></a> **Return value**
<table><thead align="left"><tr id="row12350111272614"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p1635081217266"><a name="p1635081217266"></a><a name="p1635081217266"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p335014125263"><a name="p335014125263"></a><a name="p335014125263"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row835171215263"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p1914922192620"><a name="p1914922192620"></a><a name="p1914922192620"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p135118122264"><a name="p135118122264"></a><a name="p135118122264"></a>CPU time obtained.</p>
</td>
</tr>
</tbody>
</table>
| Type| Description|
| -------- | -------- |
| number | CPU time obtained.|
- Example **Example**
``` ```
var result = process.getPastCputime() ; var result = process.getPastCputime() ;
``` ```
## process.getSystemConfig<sup>8+</sup><a name="section872533219413"></a> ## process.getSystemConfig<sup>8+</sup>
getSystemConfig\(name:number\): number getSystemConfig(name:number): number
Obtains the system configuration. Obtains the system configuration.
- Parameters **Parameters**
<a name="table187251232124112"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row1726153264119"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p187261932204117"><a name="p187261932204117"></a><a name="p187261932204117"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | name | number | Yes| System configuration parameter name.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p19726163214110"><a name="p19726163214110"></a><a name="p19726163214110"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p472613325413"><a name="p472613325413"></a><a name="p472613325413"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p15726133284110"><a name="p15726133284110"></a><a name="p15726133284110"></a>Description</p> | -------- | -------- |
</th> | number | System configuration obtained.|
</tr>
</thead> **Example**
<tbody><tr id="row672763214419"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p12727432174114"><a name="p12727432174114"></a><a name="p12727432174114"></a>name</p>
</td> ```
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1372743216418"><a name="p1372743216418"></a><a name="p1372743216418"></a>number</p> var _SC_ARG_MAX = 0
</td> var pres = process.getSystemConfig(_SC_ARG_MAX)
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p2727153213419"><a name="p2727153213419"></a><a name="p2727153213419"></a>Yes</p> ```
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1572743215418"><a name="p1572743215418"></a><a name="p1572743215418"></a>System configuration parameter name.</p>
</td> ## process.getEnvironmentVar<sup>8+</sup>
</tr>
</tbody> getEnvironmentVar(name:string): string
</table>
- Return values
<a name="table2727123213413"></a>
<table><thead align="left"><tr id="row117281232184114"><th class="cellrowborder" valign="top" width="21.02%" id="mcps1.1.3.1.1"><p id="p97281232104111"><a name="p97281232104111"></a><a name="p97281232104111"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="78.97999999999999%" id="mcps1.1.3.1.2"><p id="p1572853218415"><a name="p1572853218415"></a><a name="p1572853218415"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row14728732174120"><td class="cellrowborder" valign="top" width="21.02%" headers="mcps1.1.3.1.1 "><p id="p4728153254120"><a name="p4728153254120"></a><a name="p4728153254120"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="78.97999999999999%" headers="mcps1.1.3.1.2 "><p id="p3728193216419"><a name="p3728193216419"></a><a name="p3728193216419"></a>System configuration obtained.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var _SC_ARG_MAX = 0
var pres = process.getSystemConfig(_SC_ARG_MAX)
```
## process.getEnvironmentVar<sup>8+</sup><a name="section3554201415462"></a>
getEnvironmentVar\(name:string\): string
Obtains the value of an environment variable. Obtains the value of an environment variable.
- Parameters **Parameters**
<a name="table1554101419462"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row9555131415465"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p25559140465"><a name="p25559140465"></a><a name="p25559140465"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | name | string | Yes| Environment variable name.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p65551014124619"><a name="p65551014124619"></a><a name="p65551014124619"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p55569142467"><a name="p55569142467"></a><a name="p55569142467"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1855641454611"><a name="p1855641454611"></a><a name="p1855641454611"></a>Description</p> | -------- | -------- |
</th> | string | Value of the environment variable.|
</tr>
</thead> **Example**
<tbody><tr id="row755681414469"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p145561714164615"><a name="p145561714164615"></a><a name="p145561714164615"></a>name</p>
</td> ```
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p4556121444615"><a name="p4556121444615"></a><a name="p4556121444615"></a>string</p> var pres = process.getEnvironmentVar("PATH")
</td> ```
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p055681484619"><a name="p055681484619"></a><a name="p055681484619"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p755612143463"><a name="p755612143463"></a><a name="p755612143463"></a>Environment variable name.</p> ## process.runCmd
</td>
</tr> runCmd(command: string, options?: { timeout : number, killSignal : number | string, maxBuffer : number }) : ChildProcess
</tbody>
</table> Forks a new process to run a shell command and returns the **ChildProcess** object.
- Return values **Parameters**
<a name="table75571014164610"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row75571914184619"><th class="cellrowborder" valign="top" width="21.02%" id="mcps1.1.3.1.1"><p id="p12557101474617"><a name="p12557101474617"></a><a name="p12557101474617"></a>Type</p> | -------- | -------- | -------- | -------- |
</th> | command | string | Yes| Shell command to run.|
<th class="cellrowborder" valign="top" width="78.97999999999999%" id="mcps1.1.3.1.2"><p id="p9557191417469"><a name="p9557191417469"></a><a name="p9557191417469"></a>Description</p> | options | Object | No| Related parameters.|
</th>
</tr> **Table 1** options
</thead>
<tbody><tr id="row8557121474617"><td class="cellrowborder" valign="top" width="21.02%" headers="mcps1.1.3.1.1 "><p id="p948123084713"><a name="p948123084713"></a><a name="p948123084713"></a>string</p> | Name| Type| Mandatory| Description|
</td> | -------- | -------- | -------- | -------- |
<td class="cellrowborder" valign="top" width="78.97999999999999%" headers="mcps1.1.3.1.2 "><p id="p18558141494617"><a name="p18558141494617"></a><a name="p18558141494617"></a>Value of the environment variable.</p> | timeout | number | No| Maximum running time (in ms) of the child process. When the running time of the child process exceeds the value of this parameter, the parent process sends a **killSignal** to the child process to terminate it. The default value is **0**.|
</td> | killSignal | number&nbsp;&nbsp;\|&nbsp;string | No| Signal sent to the child process when the running time of a child process exceeds the timeout period. The default value is **SIGTERM**.|
</tr> | maxBuffer | number | No| Maximum buffer size for the standard input and output of the child process. When the size is exceeded, the child process will be terminated. The default value is **1024 \* 1024**.|
</tbody>
</table> **Return value**
- Example | Type| Description|
| -------- | -------- |
``` | [ChildProcess](#childprocess) | **ChildProcess** object.|
var pres = process.getEnvironmentVar("PATH")
``` **Example**
```
## process.runCmd<a name="section19358326587"></a> var child = process.runCmd('ls', { maxBuffer : 2 });
var result = child.wait();
runCmd\(command: string, options?: \{ timeout : number, killSignal : number | string, maxBuffer : number \}\) : ChildProcess child.getOutput.then(val=>{
console.log("child.getOutput = " + val);
Forks a new process to run a shell command and returns the **ChildProcess** object. })
```
- Parameters
<a name="table1112161035716"></a> ## process.abort
<table><thead align="left"><tr id="row191251055716"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1812191011573"><a name="p1812191011573"></a><a name="p1812191011573"></a>Name</p>
</th> abort(): void
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p111231095720"><a name="p111231095720"></a><a name="p111231095720"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p812161055714"><a name="p812161055714"></a><a name="p812161055714"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p131331025718"><a name="p131331025718"></a><a name="p131331025718"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row12131310175711"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p131301018576"><a name="p131301018576"></a><a name="p131301018576"></a>command</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p813151075720"><a name="p813151075720"></a><a name="p813151075720"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p313121025712"><a name="p313121025712"></a><a name="p313121025712"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1613131075715"><a name="p1613131075715"></a><a name="p1613131075715"></a>Shell command to run.</p>
</td>
</tr>
<tr id="row187851287441"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p187851487447"><a name="p187851487447"></a><a name="p187851487447"></a>options</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p13785987448"><a name="p13785987448"></a><a name="p13785987448"></a>Object</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p1878538154411"><a name="p1878538154411"></a><a name="p1878538154411"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p127684914432"><a name="p127684914432"></a><a name="p127684914432"></a>Related parameters.</p>
</td>
</tr>
</tbody>
</table>
**Table 1** options
<a name="table395819335512"></a>
<table><thead align="left"><tr id="row4958133185116"><th class="cellrowborder" valign="top" width="14.56%" id="mcps1.2.5.1.1"><p id="p1795813315511"><a name="p1795813315511"></a><a name="p1795813315511"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="20.48%" id="mcps1.2.5.1.2"><p id="p1895883395120"><a name="p1895883395120"></a><a name="p1895883395120"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.700000000000001%" id="mcps1.2.5.1.3"><p id="p17958633125116"><a name="p17958633125116"></a><a name="p17958633125116"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="55.26%" id="mcps1.2.5.1.4"><p id="p15958133312518"><a name="p15958133312518"></a><a name="p15958133312518"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1958833125117"><td class="cellrowborder" valign="top" width="14.56%" headers="mcps1.2.5.1.1 "><p id="p1984204213513"><a name="p1984204213513"></a><a name="p1984204213513"></a>timeout</p>
</td>
<td class="cellrowborder" valign="top" width="20.48%" headers="mcps1.2.5.1.2 "><p id="p11958733115110"><a name="p11958733115110"></a><a name="p11958733115110"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.700000000000001%" headers="mcps1.2.5.1.3 "><p id="p1995817337517"><a name="p1995817337517"></a><a name="p1995817337517"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.2.5.1.4 "><p id="p3958113385114"><a name="p3958113385114"></a><a name="p3958113385114"></a>Maximum running time (in ms) of the child process. When the running time of the child process exceeds the value of this parameter, the parent process sends a <strong id="b16581181141220"><a name="b16581181141220"></a><a name="b16581181141220"></a>killSignal</strong> to the child process to terminate it. The default value is <strong id="b83520247124"><a name="b83520247124"></a><a name="b83520247124"></a>0</strong>.</p>
</td>
</tr>
<tr id="row15974103410012"><td class="cellrowborder" valign="top" width="14.56%" headers="mcps1.2.5.1.1 "><p id="p18974173412018"><a name="p18974173412018"></a><a name="p18974173412018"></a>killSignal</p>
</td>
<td class="cellrowborder" valign="top" width="20.48%" headers="mcps1.2.5.1.2 "><p id="p1397433413014"><a name="p1397433413014"></a><a name="p1397433413014"></a>number | string</p>
</td>
<td class="cellrowborder" valign="top" width="9.700000000000001%" headers="mcps1.2.5.1.3 "><p id="p1497411347015"><a name="p1497411347015"></a><a name="p1497411347015"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.2.5.1.4 "><p id="p6975134106"><a name="p6975134106"></a><a name="p6975134106"></a>Signal sent to the child process when the running time of a child process exceeds the timeout period. The default value is <strong id="b112802023141411"><a name="b112802023141411"></a><a name="b112802023141411"></a>SIGTERM</strong>.</p>
</td>
</tr>
<tr id="row7848832602"><td class="cellrowborder" valign="top" width="14.56%" headers="mcps1.2.5.1.1 "><p id="p138496321602"><a name="p138496321602"></a><a name="p138496321602"></a>maxBuffer</p>
</td>
<td class="cellrowborder" valign="top" width="20.48%" headers="mcps1.2.5.1.2 "><p id="p138499328017"><a name="p138499328017"></a><a name="p138499328017"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.700000000000001%" headers="mcps1.2.5.1.3 "><p id="p784919321409"><a name="p784919321409"></a><a name="p784919321409"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="55.26%" headers="mcps1.2.5.1.4 "><p id="p610211102610"><a name="p610211102610"></a><a name="p610211102610"></a>Maximum buffer size for the standard input and output of the child process. When the size is exceeded, the child process will be terminated. The default value is <strong id="b17684182611617"><a name="b17684182611617"></a><a name="b17684182611617"></a>1024 * 1024</strong>.</p>
</td>
</tr>
</tbody>
</table>
- Return values
<a name="table214161065718"></a>
<table><thead align="left"><tr id="row21412108574"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p714201014577"><a name="p714201014577"></a><a name="p714201014577"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p2014131085719"><a name="p2014131085719"></a><a name="p2014131085719"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1715121005719"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p915110115714"><a name="p915110115714"></a><a name="p915110115714"></a><a href="#section6521387200">ChildProcess</a></p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p1738116141104"><a name="p1738116141104"></a><a name="p1738116141104"></a><strong id="b3379103153119"><a name="b3379103153119"></a><a name="b3379103153119"></a>ChildProcess</strong> object.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var child = process.runCmd('ls', { maxBuffer : 2 });
var result = child.wait();
child.getOutput.then(val=>{
console.log("child.getOutput = " + val);
})
```
## process.abort<a name="section564715329325"></a>
abort\(\): void
Aborts a process and generates a core file. This method will cause a process to exit immediately. Exercise caution when using this method. Aborts a process and generates a core file. This method will cause a process to exit immediately. Exercise caution when using this method.
- Example **Example**
``` ```
process.abort(); process.abort();
``` ```
## process.on<a name="section2394161818344"></a> ## process.on
on\(type: string, listener: EventListener\): void on(type: string, listener: EventListener): void
Stores the events triggered by the user. Stores the events triggered by the user.
- Parameters **Parameters**
<a name="table97411514490"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row137601516499"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p27631520491"><a name="p27631520491"></a><a name="p27631520491"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the events to store. |
<th class="cellrowborder" valign="top" width="22.68%" id="mcps1.1.5.1.2"><p id="p167691514913"><a name="p167691514913"></a><a name="p167691514913"></a>Type</p> | listener | EventListener | Yes| Callback invoked to return the event.|
</th>
<th class="cellrowborder" valign="top" width="10.12%" id="mcps1.1.5.1.3"><p id="p676101554917"><a name="p676101554917"></a><a name="p676101554917"></a>Mandatory</p> **Table 2** EventListener
</th>
<th class="cellrowborder" valign="top" width="52.38%" id="mcps1.1.5.1.4"><p id="p9774157491"><a name="p9774157491"></a><a name="p9774157491"></a>Description</p> | Name| Description|
</th> | -------- | -------- |
</tr> | EventListener&nbsp;=&nbsp;(evt:&nbsp;Object)&nbsp;=&gt;&nbsp;void | Event to store.|
</thead>
<tbody><tr id="row107791514917"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p12771515144912"><a name="p12771515144912"></a><a name="p12771515144912"></a>type</p> **Example**
</td>
<td class="cellrowborder" valign="top" width="22.68%" headers="mcps1.1.5.1.2 "><p id="p10771815134911"><a name="p10771815134911"></a><a name="p10771815134911"></a>string</p> ```
</td> process.on("data", (e)=>{
<td class="cellrowborder" valign="top" width="10.12%" headers="mcps1.1.5.1.3 "><p id="p97771554918"><a name="p97771554918"></a><a name="p97771554918"></a>Yes</p> console.log("data callback");
</td> })
<td class="cellrowborder" valign="top" width="52.38%" headers="mcps1.1.5.1.4 "><p id="p137713153495"><a name="p137713153495"></a><a name="p137713153495"></a>Type of the events to store. </p> ```
</td>
</tr>
<tr id="row158298389506"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p38301938105018"><a name="p38301938105018"></a><a name="p38301938105018"></a>listener</p> ## process.off
</td>
<td class="cellrowborder" valign="top" width="22.68%" headers="mcps1.1.5.1.2 "><p id="p118305385503"><a name="p118305385503"></a><a name="p118305385503"></a><a href="#table4113811060">EventListener</a></p> off(type: string): boolean
</td>
<td class="cellrowborder" valign="top" width="10.12%" headers="mcps1.1.5.1.3 "><p id="p18927121585115"><a name="p18927121585115"></a><a name="p18927121585115"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="52.38%" headers="mcps1.1.5.1.4 "><p id="p1883013382505"><a name="p1883013382505"></a><a name="p1883013382505"></a>Callback invoked to return the event.</p>
</td>
</tr>
</tbody>
</table>
**Table 2** EventListener
<a name="table4113811060"></a>
<table><thead align="left"><tr id="row181132115610"><th class="cellrowborder" valign="top" width="50%" id="mcps1.2.3.1.1"><p id="p5113191361"><a name="p5113191361"></a><a name="p5113191361"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="50%" id="mcps1.2.3.1.2"><p id="p161131811561"><a name="p161131811561"></a><a name="p161131811561"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row5113313614"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.1 "><p id="p241813217619"><a name="p241813217619"></a><a name="p241813217619"></a>EventListener = (evt: Object) =&gt; void</p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.2 "><p id="p151131011166"><a name="p151131011166"></a><a name="p151131011166"></a>Event to store.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
process.on("data", (e)=>{
console.log("data callback");
})
```
## process.off<a name="section1228205293415"></a>
off\(type: string\): boolean
Deletes the event stored by the user. Deletes the event stored by the user.
- Parameters **Parameters**
<a name="table15223195413589"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row722305475810"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1722375495810"><a name="p1722375495810"></a><a name="p1722375495810"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the event to delete.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p1222315547583"><a name="p1222315547583"></a><a name="p1222315547583"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p10223165410588"><a name="p10223165410588"></a><a name="p10223165410588"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p192238546586"><a name="p192238546586"></a><a name="p192238546586"></a>Description</p> | -------- | -------- |
</th> | boolean | Returns **true** if the event is deleted; returns **false** otherwise.|
</tr>
</thead> **Example**
<tbody><tr id="row112232547583"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1014218415590"><a name="p1014218415590"></a><a name="p1014218415590"></a>type</p>
</td> ```
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1314216415913"><a name="p1314216415913"></a><a name="p1314216415913"></a>string</p> process.on("data", (e)=>{
</td> console.log("data callback");
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p71427411593"><a name="p71427411593"></a><a name="p71427411593"></a>Yes</p> })
</td> var result = process.off("data");
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p14142749591"><a name="p14142749591"></a><a name="p14142749591"></a>Type of the event to delete.</p> ```
</td>
</tr>
</tbody> ## process.exit
</table>
exit(code: number): void
- Return values
<a name="table922785415814"></a>
<table><thead align="left"><tr id="row92271854115813"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p1822715542582"><a name="p1822715542582"></a><a name="p1822715542582"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p1622725445816"><a name="p1622725445816"></a><a name="p1622725445816"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row322716540586"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p4227105415813"><a name="p4227105415813"></a><a name="p4227105415813"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p20227155415582"><a name="p20227155415582"></a><a name="p20227155415582"></a>Returns <strong id="b9330203617455"><a name="b9330203617455"></a><a name="b9330203617455"></a>true</strong> if the event is deleted; returns <strong id="b1815112412453"><a name="b1815112412453"></a><a name="b1815112412453"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
process.on("data", (e)=>{
console.log("data callback");
})
var result = process.off("data");
```
## process.exit<a name="section114951112414"></a>
exit\(code: number\): void
Terminates this process. Terminates this process.
- Parameters **Parameters**
<a name="table691919201218"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row14919182012210"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p79202201623"><a name="p79202201623"></a><a name="p79202201623"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | code | number | Yes| Exit code of the process.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p2092052010218"><a name="p2092052010218"></a><a name="p2092052010218"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p89201020123"><a name="p89201020123"></a><a name="p89201020123"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p2920142015220"><a name="p2920142015220"></a><a name="p2920142015220"></a>Description</p> process.exit(0);
</th> ```
</tr>
</thead>
<tbody><tr id="row19200201225"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p169201020724"><a name="p169201020724"></a><a name="p169201020724"></a>code</p> ## process.cwd
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p18920132014217"><a name="p18920132014217"></a><a name="p18920132014217"></a>number</p> cwd(): string
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p13920320023"><a name="p13920320023"></a><a name="p13920320023"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p592018206215"><a name="p592018206215"></a><a name="p592018206215"></a>Exit code of the process.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
process.exit(0);
```
## process.cwd<a name="section13686195712218"></a>
cwd\(\): string
Obtains the working directory of this process. Obtains the working directory of this process.
- Example **Example**
``` ```
var path = process.cwd(); var path = process.cwd();
``` ```
## process.chdir<a name="section43111956114115"></a> ## process.chdir
chdir\(dir: string\): void chdir(dir: string): void
Changes the working directory of this process. Changes the working directory of this process.
- Parameters **Parameters**
<a name="table202677324416"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row162681432743"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1426818321943"><a name="p1426818321943"></a><a name="p1426818321943"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | dir | string | Yes| Path|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p6268173214416"><a name="p6268173214416"></a><a name="p6268173214416"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p4268183211410"><a name="p4268183211410"></a><a name="p4268183211410"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p16268932748"><a name="p16268932748"></a><a name="p16268932748"></a>Description</p> process.chdir('/system');
</th> ```
</tr>
</thead>
<tbody><tr id="row19268183217420"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p82682321645"><a name="p82682321645"></a><a name="p82682321645"></a>dir</p> ## process.uptime
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1226813321641"><a name="p1226813321641"></a><a name="p1226813321641"></a>string</p> uptime(): number
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p726915322416"><a name="p726915322416"></a><a name="p726915322416"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p026913215412"><a name="p026913215412"></a><a name="p026913215412"></a>New working directory.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
process.chdir('/system');
```
## process.uptime<a name="section167881439204913"></a>
uptime\(\): number
Obtains the running time of this process. Obtains the running time of this process.
- Return values **Return value**
<a name="table1447184441513"></a> | Type| Description|
<table><thead align="left"><tr id="row134819448158"><th class="cellrowborder" valign="top" width="21.02%" id="mcps1.1.3.1.1"><p id="p34812447155"><a name="p34812447155"></a><a name="p34812447155"></a>Type</p> | -------- | -------- |
</th> | number | Running time of the process, in seconds.|
<th class="cellrowborder" valign="top" width="78.97999999999999%" id="mcps1.1.3.1.2"><p id="p548204471513"><a name="p548204471513"></a><a name="p548204471513"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row114894411519"><td class="cellrowborder" valign="top" width="21.02%" headers="mcps1.1.3.1.1 "><p id="p848104412156"><a name="p848104412156"></a><a name="p848104412156"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="78.97999999999999%" headers="mcps1.1.3.1.2 "><p id="p17605112914167"><a name="p17605112914167"></a><a name="p17605112914167"></a>Running time of the process, in seconds.</p>
</td>
</tr>
</tbody>
</table>
- Example **Example**
``` ```
var time = process.uptime(); var time = process.uptime();
``` ```
## process.kill<a name="section3121181316503"></a> ## process.kill
kill\(pid: number, signal: number\): boolean kill(pid: number, signal: number): boolean
Sends a signal to the specified process to terminate it. Sends a signal to the specified process to terminate it.
- Parameters **Parameters**
<a name="table320419413195"></a>
<table><thead align="left"><tr id="row17204104113196"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p192040414196"><a name="p192040414196"></a><a name="p192040414196"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p112051141111917"><a name="p112051141111917"></a><a name="p112051141111917"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p1820513411192"><a name="p1820513411192"></a><a name="p1820513411192"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p10205104171912"><a name="p10205104171912"></a><a name="p10205104171912"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row16205124115197"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p17205194119198"><a name="p17205194119198"></a><a name="p17205194119198"></a>pid</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p9206154111912"><a name="p9206154111912"></a><a name="p9206154111912"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p129831811973"><a name="p129831811973"></a><a name="p129831811973"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p4206174101910"><a name="p4206174101910"></a><a name="p4206174101910"></a>PID of the process, to which the signal will be sent.</p>
</td>
</tr>
<tr id="row468541102118"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p36851112210"><a name="p36851112210"></a><a name="p36851112210"></a>signal</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1368614117219"><a name="p1368614117219"></a><a name="p1368614117219"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p56868110217"><a name="p56868110217"></a><a name="p56868110217"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p166869118217"><a name="p166869118217"></a><a name="p166869118217"></a>Signal to send.</p>
</td>
</tr>
</tbody>
</table>
- Return values
<a name="table320610411199"></a>
<table><thead align="left"><tr id="row19206941101910"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p16207134111917"><a name="p16207134111917"></a><a name="p16207134111917"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p3207124181912"><a name="p3207124181912"></a><a name="p3207124181912"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row15207741141911"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p1620714412197"><a name="p1620714412197"></a><a name="p1620714412197"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p7207194141914"><a name="p7207194141914"></a><a name="p7207194141914"></a>Returns <strong id="b5691160144712"><a name="b5691160144712"></a><a name="b5691160144712"></a>true</strong> if the signal is sent successfully; returns <strong id="b5409191810479"><a name="b5409191810479"></a><a name="b5409191810479"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var pres = process.pid
var result = that.kill(pres, 28)
```
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| pid | number | Yes| PID of the process, to which the signal will be sent.|
| signal | number | Yes| Signal to send.|
**Return value**
| Type| Description|
| -------- | -------- |
| boolean | Returns **true** if the signal is sent successfully; returns **false** otherwise.|
**Example**
```
var pres = process.pid
var result = that.kill(pres, 28)
```
# URI String Parsing<a name="EN-US_TOPIC_0000001206361591"></a> # URI String Parsing
>![](../../public_sys-resources/icon-note.gif) **NOTE:** > ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
>The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version.
## Modules to Import<a name="section2080512344162"></a>
## Modules to Import
``` ```
import uri from '@ohos.uri' import uri from '@ohos.uri'
``` ```
## Required Permissions<a name="section11257113618419"></a> ## System Capabilities
None SystemCapability.Utils.Lang
## URI<a name="section148871646203714"></a> ## URI
### Attributes<a name="section18482944113517"></a>
### Attributes
<a name="table20482104463514"></a>
<table><thead align="left"><tr id="row1348214444357"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p184822443351"><a name="p184822443351"></a><a name="p184822443351"></a>Name</p> | Name| Type| Readable| Writable| Description|
</th> | -------- | -------- | -------- | -------- | -------- |
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p1648254415353"><a name="p1648254415353"></a><a name="p1648254415353"></a>Type</p> | scheme | string | Yes| No| Scheme in the URI.|
</th> | userInfo | string | Yes| No| User information in the URI.|
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p9482124413355"><a name="p9482124413355"></a><a name="p9482124413355"></a>Readable</p> | host | string | Yes| No| Host name (without the port number) in the URI.|
</th> | port | string | Yes| No| Port number in the URI.|
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p3482124493515"><a name="p3482124493515"></a><a name="p3482124493515"></a>Writable</p> | path | string | Yes| No| Path in the URI.|
</th> | query | string | Yes| No| Query part in the URI.|
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p12482104483513"><a name="p12482104483513"></a><a name="p12482104483513"></a>Description</p> | fragment | string | Yes| No| Fragment part in the URI.|
</th> | authority | string | Yes| No| Authority part in the URI.|
</tr> | ssp | string | Yes| No| Scheme-specific part in the URI.|
</thead>
<tbody><tr id="row148254473513"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1832319183511"><a name="p1832319183511"></a><a name="p1832319183511"></a>scheme</p>
</td> ### constructor
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p3482124417356"><a name="p3482124417356"></a><a name="p3482124417356"></a>string</p>
</td> constructor(uri: string)
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p16483194443514"><a name="p16483194443514"></a><a name="p16483194443514"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p630714163422"><a name="p630714163422"></a><a name="p630714163422"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p72131224114411"><a name="p72131224114411"></a><a name="p72131224114411"></a>Protocol in the URI.</p>
</td>
</tr>
<tr id="row58631729183511"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1669917383355"><a name="p1669917383355"></a><a name="p1669917383355"></a>userInfo</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p986510296359"><a name="p986510296359"></a><a name="p986510296359"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p14865182993518"><a name="p14865182993518"></a><a name="p14865182993518"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1586552915355"><a name="p1586552915355"></a><a name="p1586552915355"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p12865829133514"><a name="p12865829133514"></a><a name="p12865829133514"></a>User information in the URI.</p>
</td>
</tr>
<tr id="row173737374371"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p73744376373"><a name="p73744376373"></a><a name="p73744376373"></a>host</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p183741337173714"><a name="p183741337173714"></a><a name="p183741337173714"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p13374237173711"><a name="p13374237173711"></a><a name="p13374237173711"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1737416372376"><a name="p1737416372376"></a><a name="p1737416372376"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p737414373372"><a name="p737414373372"></a><a name="p737414373372"></a>Host name (without the port number) in the URI.</p>
</td>
</tr>
<tr id="row18603545143715"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1360410454373"><a name="p1360410454373"></a><a name="p1360410454373"></a>port</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p1260410456378"><a name="p1260410456378"></a><a name="p1260410456378"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p146042453371"><a name="p146042453371"></a><a name="p146042453371"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p460416456374"><a name="p460416456374"></a><a name="p460416456374"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p3153171613242"><a name="p3153171613242"></a><a name="p3153171613242"></a>Port number in the URI.</p>
</td>
</tr>
<tr id="row15118124793712"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p9121914204110"><a name="p9121914204110"></a><a name="p9121914204110"></a>path</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p41181471376"><a name="p41181471376"></a><a name="p41181471376"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p10118447153719"><a name="p10118447153719"></a><a name="p10118447153719"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1111884793714"><a name="p1111884793714"></a><a name="p1111884793714"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p18565132916244"><a name="p18565132916244"></a><a name="p18565132916244"></a>Path in the URI.</p>
</td>
</tr>
<tr id="row2998164312378"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p20998643103713"><a name="p20998643103713"></a><a name="p20998643103713"></a>query</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p1899804315372"><a name="p1899804315372"></a><a name="p1899804315372"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p1399820431377"><a name="p1399820431377"></a><a name="p1399820431377"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p29980434371"><a name="p29980434371"></a><a name="p29980434371"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p1299814373714"><a name="p1299814373714"></a><a name="p1299814373714"></a>Query part in the URI.</p>
</td>
</tr>
<tr id="row6527542193711"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1852784212370"><a name="p1852784212370"></a><a name="p1852784212370"></a>fragment</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p205271742183711"><a name="p205271742183711"></a><a name="p205271742183711"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p952724233717"><a name="p952724233717"></a><a name="p952724233717"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1452784214373"><a name="p1452784214373"></a><a name="p1452784214373"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p18527842143718"><a name="p18527842143718"></a><a name="p18527842143718"></a>Fragment part in the URI.</p>
</td>
</tr>
<tr id="row1221604019378"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p12161040193711"><a name="p12161040193711"></a><a name="p12161040193711"></a>authority</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p12161040103714"><a name="p12161040103714"></a><a name="p12161040103714"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p621674073715"><a name="p621674073715"></a><a name="p621674073715"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1821624033711"><a name="p1821624033711"></a><a name="p1821624033711"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p1421614403377"><a name="p1421614403377"></a><a name="p1421614403377"></a>Authority part in the URI.</p>
</td>
</tr>
<tr id="row763211357376"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1863313520378"><a name="p1863313520378"></a><a name="p1863313520378"></a>ssp</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p8633113583715"><a name="p8633113583715"></a><a name="p8633113583715"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p1663363533710"><a name="p1663363533710"></a><a name="p1663363533710"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1763312358374"><a name="p1763312358374"></a><a name="p1763312358374"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p363383518374"><a name="p363383518374"></a><a name="p363383518374"></a>Scheme-specific part in the URI.</p>
</td>
</tr>
</tbody>
</table>
### constructor<a name="section796748155213"></a>
constructor\(uri: string\)
A constructor used to create a URI instance. A constructor used to create a URI instance.
- Parameters **Parameters**
<a name="table1723015271384"></a>
<table><thead align="left"><tr id="row42301327153814"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p102307272383"><a name="p102307272383"></a><a name="p102307272383"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p202307278382"><a name="p202307278382"></a><a name="p202307278382"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p19231227113813"><a name="p19231227113813"></a><a name="p19231227113813"></a>Readable</p>
</th>
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p1123113278381"><a name="p1123113278381"></a><a name="p1123113278381"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p5231172773815"><a name="p5231172773815"></a><a name="p5231172773815"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row122318279387"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p161271253807"><a name="p161271253807"></a><a name="p161271253807"></a>url</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p11231102719382"><a name="p11231102719382"></a><a name="p11231102719382"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p182311827173812"><a name="p182311827173812"></a><a name="p182311827173812"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1023152712389"><a name="p1023152712389"></a><a name="p1023152712389"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p323132783819"><a name="p323132783819"></a><a name="p323132783819"></a>Input parameter object.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var mm = 'http://username:password@host:8080/directory/file?foo=1&bar=2#fragment';
new uri.URI(mm); // Output 'http://username:password@host:8080/directory/file?foo=1&bar=2#fragment';
```
```
new uri.URI('http://username:password@host:8080'); // Output 'http://username:password@host:8080';
```
### toString<a name="section1520812025513"></a>
toString\(\): string
Obtains the query string applicable to this URL. | Name| Type.| Readable| Writable| Description|
| -------- | -------- | -------- | -------- | -------- |
| url | string | Yes| Yes| Input object.|
- Return values **Example**
<a name="table201041412244"></a> ```
<table><thead align="left"><tr id="row410431122411"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p110413182418"><a name="p110413182418"></a><a name="p110413182418"></a>Type</p> var mm = 'http://username:password@host:8080/directory/file?foo=1&bar=2#fragment';
</th> new uri.URI(mm); // Output 'http://username:password@host:8080/directory/file?foo=1&bar=2#fragment';
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p181042116249"><a name="p181042116249"></a><a name="p181042116249"></a>Description</p> ```
</th> ```
</tr> new uri.URI('http://username:password@host:8080'); // Output 'http://username:password@host:8080';
</thead> ```
<tbody><tr id="row110421182413"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p510461102411"><a name="p510461102411"></a><a name="p510461102411"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p159992542327"><a name="p159992542327"></a><a name="p159992542327"></a>Website address in a serialized string.</p> ### toString
</td>
</tr>
</tbody>
</table>
toString(): string
- Example Obtains the query string applicable to this URL.
**Return value**
| Type.| Description|
| -------- | -------- |
| string | Website address in a serialized string.|
``` **Example**
const url = new uri.URL('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
url.toString()
```
```
const url = new uri.URL('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
url.toString()
```
### equals<a name="section8201184114551"></a>
equals\(other: URI\): boolean ### equals
equals(other: URI): boolean
Checks whether this URI is the same as another URI object. Checks whether this URI is the same as another URI object.
- Parameters **Parameters**
<a name="table69661135912"></a>
<table><thead align="left"><tr id="row149668318915"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p7966738914"><a name="p7966738914"></a><a name="p7966738914"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p296713699"><a name="p296713699"></a><a name="p296713699"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p196718315911"><a name="p196718315911"></a><a name="p196718315911"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p9967231197"><a name="p9967231197"></a><a name="p9967231197"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row99671533914"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p79671633910"><a name="p79671633910"></a><a name="p79671633910"></a>other</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p780818507106"><a name="p780818507106"></a><a name="p780818507106"></a><a href="#section148871646203714">URI</a></p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p19671336916"><a name="p19671336916"></a><a name="p19671336916"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p69671631796"><a name="p69671631796"></a><a name="p69671631796"></a>URI object to compare.</p>
</td>
</tr>
</tbody>
</table>
- Return values
<a name="table648816575178"></a>
<table><thead align="left"><tr id="row54897577177"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p548916576172"><a name="p548916576172"></a><a name="p548916576172"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p748995711718"><a name="p748995711718"></a><a name="p748995711718"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row448917570178"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p848910579172"><a name="p848910579172"></a><a name="p848910579172"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p18489257161712"><a name="p18489257161712"></a><a name="p18489257161712"></a>Returns <strong id="b137321971865"><a name="b137321971865"></a><a name="b137321971865"></a>true</strong> if the two URIs are the same; returns <strong id="b1160661310617"><a name="b1160661310617"></a><a name="b1160661310617"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const uriInstance = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
const uriInstance1 = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da#fragment');
uriInstance.equals(uriInstance1);
```
### checkIsAbsolute<a name="section17961333135611"></a>
checkIsAbsolute\(\): boolean
Checks whether this URI is an absolute URI \(whether the scheme component is defined\).
- Return values
<a name="table10605130142117"></a>
<table><thead align="left"><tr id="row156051502216"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p1260640112112"><a name="p1260640112112"></a><a name="p1260640112112"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p136062012215"><a name="p136062012215"></a><a name="p136062012215"></a><strong id="b33155560324644"><a name="b33155560324644"></a><a name="b33155560324644"></a>Description</strong></p>
</th>
</tr>
</thead>
<tbody><tr id="row176062022120"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p19606140142119"><a name="p19606140142119"></a><a name="p19606140142119"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p2060690182114"><a name="p2060690182114"></a><a name="p2060690182114"></a>Returns <strong id="b1461184214711"><a name="b1461184214711"></a><a name="b1461184214711"></a>true</strong> if the URI is an absolute URI; returns <strong id="b13725458815"><a name="b13725458815"></a><a name="b13725458815"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const uriInstance = new uri.URI('http://username:password@www.qwer.com:8080?query=pppppp');
uriInstance.checkIsAbsolute();
```
### normalize<a name="section974214585573"></a>
normalize\(\): URI
Normalizes the path of this URI. | Name| Type.| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| other | [URI](#uri) | Yes| URI object to compare.|
**Return value**
| Type.| Description|
| -------- | -------- |
| boolean | Returns **true** if the two URIs are the same; returns **false** otherwise.|
**Example**
```
const uriInstance = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
const uriInstance1 = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da#fragment');
uriInstance.equals(uriInstance1);
```
### checkIsAbsolute
checkIsAbsolute(): boolean
- Return values Checks whether this URI is an absolute URI (whether the scheme component is defined).
<a name="table981932613263"></a> **Return value**
<table><thead align="left"><tr id="row38194264264"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p178208263269"><a name="p178208263269"></a><a name="p178208263269"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p15820112672617"><a name="p15820112672617"></a><a name="p15820112672617"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row2820172622610"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p13820122613264"><a name="p13820122613264"></a><a name="p13820122613264"></a>URI</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p18497141212339"><a name="p18497141212339"></a><a name="p18497141212339"></a>URI with the normalized path.</p>
</td>
</tr>
</tbody>
</table>
| Type.| Description|
| -------- | -------- |
| boolean | Returns **true** if the URI is an absolute URI; returns **false** otherwise.|
- Example **Example**
``` ```
const uriInstance = new uri.URI('http://username:password@www.qwer.com:8080/path/path1/../path2/./path3?query=pppppp'); const uriInstance = new uri.URI('http://username:password@www.qwer.com:8080?query=pppppp');
let uriInstance1 = uriInstance.normalize(); uriInstance.checkIsAbsolute();
uriInstance1.path; ```
```
### normalize
normalize(): URI
Normalizes the path of this URI.
**Return value**
| Type.| Description|
| -------- | -------- |
| URI | URI with the normalized path.|
**Example**
```
const uriInstance = new uri.URI('http://username:password@www.qwer.com:8080/path/path1/../path2/./path3?query=pppppp');
let uriInstance1 = uriInstance.normalize();
uriInstance1.path;
```
# URL String Parsing # URL String Parsing
> ![](../../public_sys-resources/icon-note.gif) **Note:** > ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
> The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version.
...@@ -10,11 +10,9 @@ ...@@ -10,11 +10,9 @@
import Url from '@ohos.url' import Url from '@ohos.url'
``` ```
## System Capabilities
## Required Permissions SystemCapability.Utils.Lang
None
## URLSearchParams ## URLSearchParams
...@@ -25,19 +23,21 @@ constructor(init?: string[][] | Record&lt;string, string&gt; | string | URLSearc ...@@ -25,19 +23,21 @@ constructor(init?: string[][] | Record&lt;string, string&gt; | string | URLSearc
Creates a **URLSearchParams** instance. Creates a **URLSearchParams** instance.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| init | string[][]&nbsp;\|&nbsp;Record&lt;string,&nbsp;string&gt;&nbsp;\|&nbsp;string&nbsp;\|&nbsp;URLSearchParams | No| Input parameter objects, which include the following: <br/>-&nbsp;**string[][]**: two-dimensional string array<br/>-&nbsp;**Record&lt;string,&nbsp;string&gt;**: list of objects<br/>-&nbsp;**string**: string<br/>-&nbsp;**URLSearchParams**: object| | -------- | -------- | -------- | -------- |
| init | string[][]&nbsp;\|&nbsp;Record&lt;string,&nbsp;string&gt;&nbsp;\|&nbsp;string&nbsp;\|&nbsp;URLSearchParams | No| Input parameter objects, which include the following: <br/>-&nbsp;**string[][]**: two-dimensional string array<br/>-&nbsp;**Record&lt;string,&nbsp;string&gt;**: list of objects<br/>-&nbsp;**string**: string<br/>-&nbsp;**URLSearchParams**: object|
**Example**
- Example ```
``` var objectParams = new URLSearchParams([ ['user1', 'abc1'], ['query2', 'first2'], ['query3', 'second3'] ]);
var objectParams = new URLSearchParams([ ['user1', 'abc1'], ['query2', 'first2'], ['query3', 'second3'] ]); var objectParams1 = new URLSearchParams({"fod" : 1 , "bard" : 2});
var objectParams1 = new URLSearchParams({"fod" : 1 , "bard" : 2}); var objectParams2 = new URLSearchParams('?fod=1&bard=2');
var objectParams2 = new URLSearchParams('?fod=1&bard=2'); var urlObject = new URL('https://developer.mozilla.org/?fod=1&bard=2');
var urlObject = new URL('https://developer.mozilla.org/?fod=1&bard=2'); var params = new URLSearchParams(urlObject .search);
var params = new URLSearchParams(urlObject .search); ```
```
### append ### append
...@@ -46,18 +46,20 @@ append(name: string, value: string): void ...@@ -46,18 +46,20 @@ append(name: string, value: string): void
Appends a key-value pair into the query string. Appends a key-value pair into the query string.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| name | string | Yes| Key of the key-value pair to append.| | -------- | -------- | -------- | -------- |
| value | string | Yes| Value of the key-value pair to append.| | name | string | Yes| Key of the key-value pair to append.|
| value | string | Yes| Value of the key-value pair to append.|
**Example**
- Example ```
``` let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new URLSearchParams(urlObject.search.slice(1));
let paramsObject = new URLSearchParams(urlObject.search.slice(1)); paramsObject.append('fod', 3);
paramsObject.append('fod', 3); ```
```
### delete ### delete
...@@ -66,17 +68,19 @@ delete(name: string): void ...@@ -66,17 +68,19 @@ delete(name: string): void
Deletes key-value pairs of the specified key. Deletes key-value pairs of the specified key.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| name | string | Yes| Key of the key-value pairs to delete.| | -------- | -------- | -------- | -------- |
| name | string | Yes| Key of the key-value pairs to delete.|
**Example**
- Example ```
``` let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsobject = new URLSearchParams(urlObject.search.slice(1));
let paramsobject = new URLSearchParams(urlObject.search.slice(1)); paramsobject.delete('foo');
paramsobject.delete('foo'); ```
```
### getAll ### getAll
...@@ -85,23 +89,26 @@ getAll(name: string): string[] ...@@ -85,23 +89,26 @@ getAll(name: string): string[]
Obtains all the key-value pairs based on the specified key. Obtains all the key-value pairs based on the specified key.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| name | string | Yes| Key specified to obtain all key-value pairs.| | -------- | -------- | -------- | -------- |
| name | string | Yes| Key specified to obtain all key-value pairs.|
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | string[] | All key-value pairs matching the specified key.|
| string[] | All key-value pairs matching the specified key.|
- Example **Example**
```
let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2'); ```
let paramsObject = new URLSearchParams(urlObject.search.slice(1)); let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
paramsObject.append('fod', 3); // Add a second value for the foo parameter. let paramsObject = new URLSearchParams(urlObject.search.slice(1));
console.log(params.getAll('fod')) // Output ["1","3"]. paramsObject.append('fod', 3); // Add a second value for the foo parameter.
``` console.log(params.getAll('fod')) // Output ["1","3"].
```
### entries ### entries
...@@ -110,18 +117,20 @@ entries(): IterableIterator&lt;[string, string]&gt; ...@@ -110,18 +117,20 @@ entries(): IterableIterator&lt;[string, string]&gt;
Obtains an ES6 iterator. Each item of the iterator is a JavaScript array, and the first and second fields of each array are the key and value respectively. Obtains an ES6 iterator. Each item of the iterator is a JavaScript array, and the first and second fields of each array are the key and value respectively.
- Return values **Return value**
| Type| Description|
| -------- | -------- | | Type| Description|
| IterableIterator&lt;[string,&nbsp;string]&gt; | An ES6 iterator.| | -------- | -------- |
| IterableIterator&lt;[string,&nbsp;string]&gt; | An ES6 iterator.|
- Example **Example**
```
var searchParamsObject = new URLSearchParams("keyName1=valueName1&keyName2=valueName2"); ```
for (var pair of searchParamsObject .entries()) { // Show keyName/valueName pairs var searchParamsObject = new URLSearchParams("keyName1=valueName1&keyName2=valueName2");
console.log(pair[0]+ ', '+ pair[1]); for (var pair of searchParamsObject .entries()) { // Show keyName/valueName pairs
} console.log(pair[0]+ ', '+ pair[1]);
``` }
```
### forEach ### forEach
...@@ -130,27 +139,29 @@ forEach(callbackfn: (value: string, key: string, searchParams: Object) =&gt; voi ...@@ -130,27 +139,29 @@ forEach(callbackfn: (value: string, key: string, searchParams: Object) =&gt; voi
Traverses the key-value pairs in the **URLSearchParams** instance by using a callback. Traverses the key-value pairs in the **URLSearchParams** instance by using a callback.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| callbackfn | function | Yes| Callback invoked to traverse the key-value pairs in the **URLSearchParams** instance.| | -------- | -------- | -------- | -------- |
| thisArg | Object | No| Value to use when the callback is invoked.| | callbackfn | function | Yes| Callback invoked to traverse the key-value pairs in the **URLSearchParams** instance.|
| thisArg | Object | No| Value to use when the callback is invoked.|
**Table 1** callbackfn parameter description
**Table 1** callbackfn parameter description
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| value | string | Yes| Value that is currently traversed.| | -------- | -------- | -------- | -------- |
| key | string | Yes| Key that is currently traversed.| | value | string | Yes| Value that is currently traversed.|
| searchParams | Object | Yes| Instance that invokes the **forEach** method.| | key | string | Yes| Key that is currently traversed.|
| searchParams | Object | Yes| Instance that invokes the **forEach** method.|
- Example
``` **Example**
const myURLObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
myURLObject.searchParams.forEach((value, name, searchParams) => { ```
console.log(name, value, myURLObject.searchParams === searchParams); const myURLObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
}); myURLObject.searchParams.forEach((value, name, searchParams) => {
``` console.log(name, value, myURLObject.searchParams === searchParams);
});
```
### get ### get
...@@ -159,24 +170,27 @@ get(name: string): string | null ...@@ -159,24 +170,27 @@ get(name: string): string | null
Obtains the value of the first key-value pair based on the specified key. Obtains the value of the first key-value pair based on the specified key.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| name | string | Yes| Key specified to obtain the value.| | -------- | -------- | -------- | -------- |
| name | string | Yes| Key specified to obtain the value.|
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | string | Returns the value of the first key-value pair if obtained.|
| string | Returns the value of the first key-value pair if obtained.| | null | Returns null if no value is obtained.|
| null | Returns null if no value is obtained.|
- Example **Example**
```
var paramsOject = new URLSearchParams(document.location.search.substring(1)); ```
var name = paramsOject.get("name"); // is the string "Jonathan" var paramsOject = new URLSearchParams(document.location.search.substring(1));
var age = parseInt(paramsOject.get("age"), 10); // is the number 18 var name = paramsOject.get("name"); // is the string "Jonathan"
var address = paramsOject.get("address"); // null var age = parseInt(paramsOject.get("age"), 10); // is the number 18
``` var address = paramsOject.get("address"); // null
```
### has ### has
...@@ -184,22 +198,26 @@ Obtains the value of the first key-value pair based on the specified key. ...@@ -184,22 +198,26 @@ Obtains the value of the first key-value pair based on the specified key.
has(name: string): boolean has(name: string): boolean
Checks whether a key has a value. Checks whether a key has a value.
- Parameters
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| name | string | Yes| Key specified to search for its value.|
- Return values **Parameters**
| Type| Description|
| -------- | -------- | | Name| Type| Mandatory| Description|
| boolean | Returns **true** if the value exists; returns **false** otherwise.| | -------- | -------- | -------- | -------- |
| name | string | Yes| Key specified to search for its value.|
- Example **Return value**
```
let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2'); | Type| Description|
let paramsObject = new URLSearchParams(urlObject.search.slice(1)); | -------- | -------- |
paramsObject.has('bard') === true; | boolean | Returns **true** if the value exists; returns **false** otherwise.|
```
**Example**
```
let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
let paramsObject = new URLSearchParams(urlObject.search.slice(1));
paramsObject.has('bard') === true;
```
### set ### set
...@@ -208,18 +226,20 @@ set(name: string, value: string): void ...@@ -208,18 +226,20 @@ set(name: string, value: string): void
Sets the value for a key. If key-value pairs matching the specified key exist, the value of the first key-value pair will be set to the specified value and other key-value pairs will be deleted. Otherwise, the key-value pair will be appended to the query string. Sets the value for a key. If key-value pairs matching the specified key exist, the value of the first key-value pair will be set to the specified value and other key-value pairs will be deleted. Otherwise, the key-value pair will be appended to the query string.
- Parameters **Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | Name| Type| Mandatory| Description|
| name | string | Yes| Key of the value to set.| | -------- | -------- | -------- | -------- |
| value | string | Yes| Value to set.| | name | string | Yes| Key of the value to set.|
| value | string | Yes| Value to set.|
- Example **Example**
```
let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2'); ```
let paramsObject = new URLSearchParams(urlObject.search.slice(1)); let urlObject = new URL('https://developer.exampleUrl/?fod=1&bard=2');
paramsObject.set('baz', 3); // Add a third parameter. let paramsObject = new URLSearchParams(urlObject.search.slice(1));
``` paramsObject.set('baz', 3); // Add a third parameter.
```
### sort ### sort
...@@ -229,13 +249,13 @@ sort(): void ...@@ -229,13 +249,13 @@ sort(): void
Sorts all key-value pairs contained in this object based on the Unicode code points of the keys and returns undefined. This method uses a stable sorting algorithm, that is, the relative order between key-value pairs with equal keys is retained. Sorts all key-value pairs contained in this object based on the Unicode code points of the keys and returns undefined. This method uses a stable sorting algorithm, that is, the relative order between key-value pairs with equal keys is retained.
**Example**
- Example ```
``` var searchParamsObject = new URLSearchParams("c=3&a=9&b=4&d=2"); // Create a test URLSearchParams object
var searchParamsObject = new URLSearchParams("c=3&a=9&b=4&d=2"); // Create a test URLSearchParams object searchParamsObject.sort(); // Sort the key/value pairs
searchParamsObject.sort(); // Sort the key/value pairs console.log(searchParamsObject.toString()); // Display the sorted query string // Output a=9&b=2&c=3&d=4
console.log(searchParamsObject.toString()); // Display the sorted query string // Output a=9&b=2&c=3&d=4 ```
```
### keys ### keys
...@@ -245,20 +265,20 @@ keys(): IterableIterator&lt;string&gt; ...@@ -245,20 +265,20 @@ keys(): IterableIterator&lt;string&gt;
Obtains an ES6 iterator that contains the keys of all the key-value pairs. Obtains an ES6 iterator that contains the keys of all the key-value pairs.
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | IterableIterator&lt;string&gt; | ES6 iterator that contains the keys of all the key-value pairs.|
| IterableIterator&lt;string&gt; | ES6 iterator that contains the keys of all the key-value pairs.|
**Example**
- Example ```
``` var searchParamsObject = new URLSearchParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing
var searchParamsObject = new URLSearchParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing for (var key of searchParamsObject .keys()) { // Output key-value pairs
for (var key of searchParamsObject .keys()) { // Output key-value pairs console.log(key);
console.log(key); }
} ```
```
### values ### values
...@@ -267,41 +287,43 @@ values(): IterableIterator&lt;string&gt; ...@@ -267,41 +287,43 @@ values(): IterableIterator&lt;string&gt;
Obtains an ES6 iterator that contains the values of all the key-value pairs. Obtains an ES6 iterator that contains the values of all the key-value pairs.
- Return values **Return value**
| Type| Description|
| -------- | -------- | | Type| Description|
| IterableIterator&lt;string&gt; | ES6 iterator that contains the values of all the key-value pairs.| | -------- | -------- |
| IterableIterator&lt;string&gt; | ES6 iterator that contains the values of all the key-value pairs.|
- Example **Example**
```
var searchParams = new URLSearchParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing ```
for (var value of searchParams.values()) { var searchParams = new URLSearchParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing
console.log(value); for (var value of searchParams.values()) {
} console.log(value);
``` }
```
### [Symbol.iterator] ### [Symbol.iterator]
[Symbol.iterator](): IterableIterator&lt;[string, string]&gt; [Symbol.iterator]\(): IterableIterator&lt;[string, string]&gt;
Obtains an ES6 iterator. Each item of the iterator is a JavaScript array, and the first and second fields of each array are the key and value respectively. Obtains an ES6 iterator. Each item of the iterator is a JavaScript array, and the first and second fields of each array are the key and value respectively.
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | IterableIterator&lt;[string,&nbsp;string]&gt; | ES6 iterator.|
| IterableIterator&lt;[string,&nbsp;string]&gt; | An ES6 iterator.|
**Example**
- Example ```
``` const paramsObject = new URLSearchParams('fod=bay&edg=bap');
const paramsObject = new URLSearchParams('fod=bay&edg=bap'); for (const [name, value] of paramsObject) {
for (const [name, value] of paramsObject) { console.log(name, value);
console.log(name, value); }
} ```
```
### tostring ### tostring
...@@ -311,20 +333,20 @@ toString(): string ...@@ -311,20 +333,20 @@ toString(): string
Obtains search parameters that are serialized as a string and, if necessary, percent-encodes the characters in the string. Obtains search parameters that are serialized as a string and, if necessary, percent-encodes the characters in the string.
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | string | String of serialized search parameters, which is percent-encoded if necessary.|
| string | String of serialized search parameters, which is percent-encoded if necessary.|
**Example**
- Example ```
``` let url = new URL('https://developer.exampleUrl/?fod=1&bard=2');
let url = new URL('https://developer.exampleUrl/?fod=1&bard=2'); let params = new URLSearchParams(url.search.slice(1));
let params = new URLSearchParams(url.search.slice(1)); params.append('fod', 3);
params.append('fod', 3); console.log(params.toString());
console.log(params.toString()); ```
```
## URL ## URL
...@@ -355,29 +377,29 @@ constructor(url: string, base?: string | URL) ...@@ -355,29 +377,29 @@ constructor(url: string, base?: string | URL)
Creates a URL. Creates a URL.
**Parameters**
- Parameters | Name| Type| Mandatory| Description|
| Name| Type| Mandatory| Description| | -------- | -------- | -------- | -------- |
| -------- | -------- | -------- | -------- | | url | string | Yes| Input object.|
| url | string | Yes| Input object.| | base | string&nbsp;\|&nbsp;URL | No| Input parameter, which can be any of the following: <br/>-&nbsp;**string**: string<br/>-&nbsp;**URL**: string or object|
| base | string&nbsp;\|&nbsp;URL | No| Input parameter, which can be any of the following: <br/>-&nbsp;**string**: string<br/>-&nbsp;**URL**: string or object|
**Example**
- Example ```
``` var mm = 'http://username:password@host:8080';
var mm = 'http://username:password@host:8080'; var a = new URL("/", mm); // Output 'http://username:password@host:8080/';
var a = new URL("/", mm); // Output 'http://username:password@host:8080/'; var b = new URL(mm); // Output 'http://username:password@host:8080/';
var b = new URL(mm); // Output 'http://username:password@host:8080/'; new URL('path/path1', b); // Output 'http://username:password@host:8080/path/path1';
new URL('path/path1', b); // Output 'http://username:password@host:8080/path/path1'; var c = new URL('/path/path1', b); // Output 'http://username:password@host:8080/path/path1';
var c = new URL('/path/path1', b); // Output 'http://username:password@host:8080/path/path1'; new URL('/path/path1', c); // Output 'http://username:password@host:8080/path/path1';
new URL('/path/path1', c); // Output 'http://username:password@host:8080/path/path1'; new URL('/path/path1', a); // Output 'http://username:password@host:8080/path/path1';
new URL('/path/path1', a); // Output 'http://username:password@host:8080/path/path1'; new URL('/path/path1', "https://www.exampleUrl/fr-FR/toto"); // Output https://www.exampleUrl/path/path1
new URL('/path/path1', "https://www.exampleUrl/fr-FR/toto"); // Output https://www.exampleUrl/path/path1 new URL('/path/path1', ''); // Raises a TypeError exception as '' is not a valid URL
new URL('/path/path1', ''); // Raises a TypeError exception as '' is not a valid URL new URL('/path/path1'); // Raises a TypeError exception as '/path/path1' is not a valid URL
new URL('/path/path1'); // Raises a TypeError exception as '/path/path1' is not a valid URL new URL('http://www.shanxi.com', ); // Output http://www.shanxi.com/
new URL('http://www.shanxi.com', ); // Output http://www.shanxi.com/ new URL('http://www.shanxi.com', b); // Output http://www.shanxi.com/
new URL('http://www.shanxi.com', b); // Output http://www.shanxi.com/ ```
```
### tostring ### tostring
...@@ -386,18 +408,18 @@ toString(): string ...@@ -386,18 +408,18 @@ toString(): string
Converts the parsed URL into a string. Converts the parsed URL into a string.
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | string | Website address in a serialized string.|
| string | Website address in a serialized string.|
**Example**
- Example ```
``` const url = new URL('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
const url = new URL('http://username:password@host:8080/directory/file?query=pppppp#qwer=da'); url.toString()
url.toString() ```
```
### toJSON ### toJSON
...@@ -407,15 +429,14 @@ toJSON(): string ...@@ -407,15 +429,14 @@ toJSON(): string
Converts the parsed URL into a JSON string. Converts the parsed URL into a JSON string.
**Return value**
- Return values | Type| Description|
| Type| Description| | -------- | -------- |
| -------- | -------- | | string | Website address in a serialized string.|
| string | Website address in a serialized string.|
- Example **Example**
``` ```
const url = new URL('http://username:password@host:8080/directory/file?query=pppppp#qwer=da'); const url = new URL('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
url.toJSON() url.toJSON()
``` ```
因为 它太大了无法显示 source diff 。你可以改为 查看blob
# Worker Startup<a name="EN-US_TOPIC_0000001172830331"></a> # Worker Startup
>**NOTE:** > ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
>The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version.
## Modules to Import<a name="s56d19203690d4782bfc74069abb6bd71"></a>
## Modules to Import
``` ```
import worker from '@ohos.worker'; import worker from '@ohos.worker';
``` ```
## Required Permissions<a name="section11257113618419"></a> ## System Capabilities
None SystemCapability.Utils.Lang
## Attributes<a name="section1578718135716"></a> ## Attributes
<a name="table17771723175716"></a> | Name| Type| Readable| Writable| Description|
<table><thead align="left"><tr id="row1977112237573"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p12771142335710"><a name="p12771142335710"></a><a name="p12771142335710"></a>Name</p> | -------- | -------- | -------- | -------- | -------- |
</th> | parentPort | [DedicatedWorkerGlobalScope](#dedicatedworkerglobalscope) | Yes| Yes| Object of the worker thread used to communicate with the host thread.|
<th class="cellrowborder" valign="top" width="18.19%" id="mcps1.1.6.1.2"><p id="p12771202325716"><a name="p12771202325716"></a><a name="p12771202325716"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="11.64%" id="mcps1.1.6.1.3"><p id="p1577117232576"><a name="p1577117232576"></a><a name="p1577117232576"></a>Readable</p> ## WorkerOptions
</th>
<th class="cellrowborder" valign="top" width="10.31%" id="mcps1.1.6.1.4"><p id="p2771623185711"><a name="p2771623185711"></a><a name="p2771623185711"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="43.99%" id="mcps1.1.6.1.5"><p id="p197711223155714"><a name="p197711223155714"></a><a name="p197711223155714"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row877142318577"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1771192315710"><a name="p1771192315710"></a><a name="p1771192315710"></a>parentPort</p>
</td>
<td class="cellrowborder" valign="top" width="18.19%" headers="mcps1.1.6.1.2 "><p id="p396011395812"><a name="p396011395812"></a><a name="p396011395812"></a><a href="#section36872023123912">DedicatedWorkerGlobalScope</a></p>
</td>
<td class="cellrowborder" valign="top" width="11.64%" headers="mcps1.1.6.1.3 "><p id="p677122335711"><a name="p677122335711"></a><a name="p677122335711"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="10.31%" headers="mcps1.1.6.1.4 "><p id="p17719232577"><a name="p17719232577"></a><a name="p17719232577"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="43.99%" headers="mcps1.1.6.1.5 "><p id="p205212394586"><a name="p205212394586"></a><a name="p205212394586"></a>Object of the worker thread used to communicate with the host thread.</p>
</td>
</tr>
</tbody>
</table>
## WorkerOptions<a name="section189341937163212"></a>
Provides options that can be set for the worker to create. Provides options that can be set for the worker to create.
<a name="table728861911417"></a> | Name| Type| Readable| Writable| Description|
<table><thead align="left"><tr id="row62887198149"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p928811911410"><a name="p928811911410"></a><a name="p928811911410"></a>Name</p> | -------- | -------- | -------- | -------- | -------- |
</th> | type | "classic" | Yes| Yes| Mode in which the worker executes the script.|
<th class="cellrowborder" valign="top" width="18.19%" id="mcps1.1.6.1.2"><p id="p8288191916149"><a name="p8288191916149"></a><a name="p8288191916149"></a>Type</p> | name | string | Yes| Yes| Name of the worker.|
</th>
<th class="cellrowborder" valign="top" width="11.64%" id="mcps1.1.6.1.3"><p id="p14288131911418"><a name="p14288131911418"></a><a name="p14288131911418"></a>Readable</p>
</th> ## Worker
<th class="cellrowborder" valign="top" width="10.31%" id="mcps1.1.6.1.4"><p id="p1928861921411"><a name="p1928861921411"></a><a name="p1928861921411"></a>Writable</p>
</th> Before using the following methods, you must construct a worker instance. The **Worker** class inherits from [EventTarget](#eventtarget).
<th class="cellrowborder" valign="top" width="43.99%" id="mcps1.1.6.1.5"><p id="p728815191149"><a name="p728815191149"></a><a name="p728815191149"></a>Description</p>
</th>
</tr> ### constructor
</thead>
<tbody><tr id="row528891919142"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p3288191991414"><a name="p3288191991414"></a><a name="p3288191991414"></a>type</p> constructor(scriptURL: string, options?: WorkerOptions)
</td>
<td class="cellrowborder" valign="top" width="18.19%" headers="mcps1.1.6.1.2 "><p id="p3288121901418"><a name="p3288121901418"></a><a name="p3288121901418"></a>"classic"</p> A constructor used to create a **Worker** instance.
</td>
<td class="cellrowborder" valign="top" width="11.64%" headers="mcps1.1.6.1.3 "><p id="p182881319191414"><a name="p182881319191414"></a><a name="p182881319191414"></a>Yes</p> **Parameters**
</td>
<td class="cellrowborder" valign="top" width="10.31%" headers="mcps1.1.6.1.4 "><p id="p1176125118471"><a name="p1176125118471"></a><a name="p1176125118471"></a>Yes</p> | Name| Type| Mandatory| Description|
</td> | -------- | -------- | -------- | -------- |
<td class="cellrowborder" valign="top" width="43.99%" headers="mcps1.1.6.1.5 "><p id="p1428811192144"><a name="p1428811192144"></a><a name="p1428811192144"></a>Mode in which the worker executes the script.</p> | scriptURL | string | Yes| URL of the script to be executed by the worker. The script is stored in the **workers** directory, which is in the same directory as the **pages** directory of the new DevEco Studio project. If the **workers** directory does not exist, you need to create it.|
</td> | options | [WorkerOptions](#workeroptions) | No| Options that can be set for the worker.|
</tr>
<tr id="row11288719111417"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p10288419131415"><a name="p10288419131415"></a><a name="p10288419131415"></a>name</p> **Return value**
</td>
<td class="cellrowborder" valign="top" width="18.19%" headers="mcps1.1.6.1.2 "><p id="p428914193147"><a name="p428914193147"></a><a name="p428914193147"></a>string</p> | Type| Description|
</td> | -------- | -------- |
<td class="cellrowborder" valign="top" width="11.64%" headers="mcps1.1.6.1.3 "><p id="p3289121912146"><a name="p3289121912146"></a><a name="p3289121912146"></a>Yes</p> | worker | Returns the **Worker** instance created; returns **undefined** if the **Worker** instance fails to be created.|
</td>
<td class="cellrowborder" valign="top" width="10.31%" headers="mcps1.1.6.1.4 "><p id="p8289319111415"><a name="p8289319111415"></a><a name="p8289319111415"></a>Yes</p> **Example**
</td>
<td class="cellrowborder" valign="top" width="43.99%" headers="mcps1.1.6.1.5 "><p id="p1228991915144"><a name="p1228991915144"></a><a name="p1228991915144"></a>Name of the worker.</p> ```
</td> const workerInstance = new worker.Worker("workers/worker.js", {name:"first worker"});
</tr> ```
</tbody>
</table>
### postMessage
## Worker<a name="section182179935414"></a>
postMessage(message: Object, options?: PostMessageOptions): void
Before using the following methods, you must construct a worker instance. The **worker** class inherits from [EventTarget](#section256019311465).
### constructor<a name="section10131143931118"></a>
constructor\(scriptURL: string, options?: WorkerOptions\)
A constructor used to create a worker instance.
- Parameters
<a name="table761145571116"></a>
<table><thead align="left"><tr id="row1961555161115"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p9611355171115"><a name="p9611355171115"></a><a name="p9611355171115"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="20.9%" id="mcps1.1.5.1.2"><p id="p661185512119"><a name="p661185512119"></a><a name="p661185512119"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="10.77%" id="mcps1.1.5.1.3"><p id="p361855171113"><a name="p361855171113"></a><a name="p361855171113"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="53.510000000000005%" id="mcps1.1.5.1.4"><p id="p17611550112"><a name="p17611550112"></a><a name="p17611550112"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1061555121112"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p761175511117"><a name="p761175511117"></a><a name="p761175511117"></a>scriptURL</p>
</td>
<td class="cellrowborder" valign="top" width="20.9%" headers="mcps1.1.5.1.2 "><p id="p461155191111"><a name="p461155191111"></a><a name="p461155191111"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="10.77%" headers="mcps1.1.5.1.3 "><p id="p106165561111"><a name="p106165561111"></a><a name="p106165561111"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="53.510000000000005%" headers="mcps1.1.5.1.4 "><p id="p361655121112"><a name="p361655121112"></a><a name="p361655121112"></a>URL of the script to be executed by the worker. The script is stored in the <strong id="b1032422614435"><a name="b1032422614435"></a><a name="b1032422614435"></a>workers</strong> directory, which is in the same directory as the <strong id="b7458447164316"><a name="b7458447164316"></a><a name="b7458447164316"></a>pages</strong> directory of the new DevEco Studio project. If the <strong id="b1754142964418"><a name="b1754142964418"></a><a name="b1754142964418"></a>workers</strong> directory does not exist, you need to create it.</p>
</td>
</tr>
<tr id="row261115517115"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p106155541112"><a name="p106155541112"></a><a name="p106155541112"></a>options</p>
</td>
<td class="cellrowborder" valign="top" width="20.9%" headers="mcps1.1.5.1.2 "><p id="p186155516113"><a name="p186155516113"></a><a name="p186155516113"></a><a href="#section189341937163212">WorkerOptions</a></p>
</td>
<td class="cellrowborder" valign="top" width="10.77%" headers="mcps1.1.5.1.3 "><p id="p1161105511118"><a name="p1161105511118"></a><a name="p1161105511118"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="53.510000000000005%" headers="mcps1.1.5.1.4 "><p id="p1862255141118"><a name="p1862255141118"></a><a name="p1862255141118"></a>Options that can be set for the worker.</p>
</td>
</tr>
</tbody>
</table>
- Return values
<a name="table362855181117"></a>
<table><thead align="left"><tr id="row1462255191114"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p1621355121115"><a name="p1621355121115"></a><a name="p1621355121115"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p16295571119"><a name="p16295571119"></a><a name="p16295571119"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row116275516110"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p76295515112"><a name="p76295515112"></a><a name="p76295515112"></a>Worker</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p362195531112"><a name="p362195531112"></a><a name="p362195531112"></a>Returns the worker instance created; returns <strong id="b49535319421"><a name="b49535319421"></a><a name="b49535319421"></a>undefined</strong> if the worker instance fails to be created.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js", {name:"first worker"});
```
### postMessage<a name="section1410593619146"></a>
postMessage\(message: Object, options?: PostMessageOptions\): void
Sends a message to the worker thread. The data is transferred using the structured clone algorithm. Sends a message to the worker thread. The data is transferred using the structured clone algorithm.
- Parameters **Parameters**
<a name="table114831131512"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row914851141517"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p214819113159"><a name="p214819113159"></a><a name="p214819113159"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | message | Object | Yes| Data to be sent to the worker.|
<th class="cellrowborder" valign="top" width="18.9%" id="mcps1.1.5.1.2"><p id="p1214921121519"><a name="p1214921121519"></a><a name="p1214921121519"></a>Type</p> | options | [PostMessageOptions](#postmessageoptions) | No| **ArrayBuffer** instances that can be transferred. The **transferList** array cannot contain **null**.|
</th>
<th class="cellrowborder" valign="top" width="8.49%" id="mcps1.1.5.1.3"><p id="p11491711141512"><a name="p11491711141512"></a><a name="p11491711141512"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="57.79%" id="mcps1.1.5.1.4"><p id="p171491011171512"><a name="p171491011171512"></a><a name="p171491011171512"></a>Description</p> ```
</th> const workerInstance = new worker.Worker("workers/worker.js");
</tr> workerInstance.postMessage("hello world");
</thead> ```
<tbody><tr id="row91491211131519"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p914912115156"><a name="p914912115156"></a><a name="p914912115156"></a>message</p> ```
</td> const workerInstance= new worker.Worker("workers/worker.js");
<td class="cellrowborder" valign="top" width="18.9%" headers="mcps1.1.5.1.2 "><p id="p1114918116154"><a name="p1114918116154"></a><a name="p1114918116154"></a>Object</p> var buffer = new ArrayBuffer(8);
</td> workerInstance.postMessage(buffer, [buffer]);
<td class="cellrowborder" valign="top" width="8.49%" headers="mcps1.1.5.1.3 "><p id="p314916118154"><a name="p314916118154"></a><a name="p314916118154"></a>Yes</p> ```
</td>
<td class="cellrowborder" valign="top" width="57.79%" headers="mcps1.1.5.1.4 "><p id="p814951171516"><a name="p814951171516"></a><a name="p814951171516"></a>Data to be sent to the worker.</p>
</td> ### on
</tr>
<tr id="row5149511191511"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p161491511151511"><a name="p161491511151511"></a><a name="p161491511151511"></a>options</p> on(type: string, listener: EventListener): void
</td>
<td class="cellrowborder" valign="top" width="18.9%" headers="mcps1.1.5.1.2 "><p id="p858904361718"><a name="p858904361718"></a><a name="p858904361718"></a><a href="#section176401093245">PostMessageOptions</a></p>
</td>
<td class="cellrowborder" valign="top" width="8.49%" headers="mcps1.1.5.1.3 "><p id="p61491811131518"><a name="p61491811131518"></a><a name="p61491811131518"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="57.79%" headers="mcps1.1.5.1.4 "><p id="p67490772615"><a name="p67490772615"></a><a name="p67490772615"></a><strong id="b562310530116"><a name="b562310530116"></a><a name="b562310530116"></a>ArrayBuffer</strong> instances that can be transferred. The <strong id="b95422281828"><a name="b95422281828"></a><a name="b95422281828"></a>transferList</strong> array cannot contain <strong id="b1223116341821"><a name="b1223116341821"></a><a name="b1223116341821"></a>null</strong>.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js");
workerInstance.postMessage("hello world");
```
```
const workerInstance = new worker.Worker("workers/worker.js");
var buffer = new ArrayBuffer(8);
workerInstance.postMessage(buffer, [buffer]);
```
### on<a name="section1201327272"></a>
on\(type: string, listener: EventListener\): void
Adds an event listener to the worker. Adds an event listener to the worker.
- Parameters **Parameters**
<a name="table7033219276"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row120143262719"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p13115322273"><a name="p13115322273"></a><a name="p13115322273"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the event to listen for.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p911732152715"><a name="p911732152715"></a><a name="p911732152715"></a>Type</p> | listener | [EventListener](#eventlistener) | Yes| Callback to invoke when an event of the specified type occurs.|
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p15183232715"><a name="p15183232715"></a><a name="p15183232715"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p181132192710"><a name="p181132192710"></a><a name="p181132192710"></a>Description</p> ```
</th> const workerInstance = new worker.Worker("workers/worker.js")
</tr> workerInstance.on("alert", (e)=>{
</thead> console.log("alert listener callback");
<tbody><tr id="row161532162715"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p101732182712"><a name="p101732182712"></a><a name="p101732182712"></a>type</p> })
</td> ```
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p2115329277"><a name="p2115329277"></a><a name="p2115329277"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p17123242710"><a name="p17123242710"></a><a name="p17123242710"></a>Yes</p> ### once
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p6143272720"><a name="p6143272720"></a><a name="p6143272720"></a>Type of the event to listen for.</p> once(type: string, listener: EventListener): void
</td>
</tr>
<tr id="row3193202715"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p6115326275"><a name="p6115326275"></a><a name="p6115326275"></a>listener</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p171183272714"><a name="p171183272714"></a><a name="p171183272714"></a><a href="#section53411747134914">EventListener</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p4183292710"><a name="p4183292710"></a><a name="p4183292710"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p5173202714"><a name="p5173202714"></a><a name="p5173202714"></a>Callback to invoke when an event of the specified type occurs.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.on("alert", (e)=>{
console.log("alert listener callback");
})
```
### once<a name="section74391240133513"></a>
once\(type: string, listener: EventListener\): void
Adds an event listener to the worker and removes the event listener automatically after it is invoked once. Adds an event listener to the worker and removes the event listener automatically after it is invoked once.
- Parameters **Parameters**
<a name="table143916408357"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row16439440193511"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1743974013513"><a name="p1743974013513"></a><a name="p1743974013513"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the event to listen for.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p543924014354"><a name="p543924014354"></a><a name="p543924014354"></a>Type</p> | listener | [EventListener](#eventlistener) | Yes| Callback to invoke when an event of the specified type occurs.|
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p0439114073513"><a name="p0439114073513"></a><a name="p0439114073513"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p34398400359"><a name="p34398400359"></a><a name="p34398400359"></a>Description</p> ```
</th> const workerInstance = new worker.Worker("workers/worker.js");
</tr> workerInstance.once("alert", (e)=>{
</thead> console.log("alert listener callback");
<tbody><tr id="row843916409354"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p7439840163518"><a name="p7439840163518"></a><a name="p7439840163518"></a>type</p> })
</td> ```
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p1144044063511"><a name="p1144044063511"></a><a name="p1144044063511"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p15440194023510"><a name="p15440194023510"></a><a name="p15440194023510"></a>Yes</p> ### off
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p14401409359"><a name="p14401409359"></a><a name="p14401409359"></a>Type of the event to listen for.</p> off(type: string, listener?: EventListener): void
</td>
</tr>
<tr id="row4440040103517"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p644034018354"><a name="p644034018354"></a><a name="p644034018354"></a>listener</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p144401640163510"><a name="p144401640163510"></a><a name="p144401640163510"></a><a href="#section53411747134914">EventListener</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p44401740163511"><a name="p44401740163511"></a><a name="p44401740163511"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1944074073514"><a name="p1944074073514"></a><a name="p1944074073514"></a>Callback to invoke when an event of the specified type occurs.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js");
workerInstance.once("alert", (e)=>{
console.log("alert listener callback");
})
```
### off<a name="section8902182918363"></a>
off\(type: string, listener?: EventListener\): void
Removes an event listener for the worker. Removes an event listener for the worker.
- Parameters **Parameters**
<a name="table190342913364"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row11903172973618"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1690342920362"><a name="p1690342920362"></a><a name="p1690342920362"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the event for which the event listener is removed.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p1490382916367"><a name="p1490382916367"></a><a name="p1490382916367"></a>Type</p> | listener | [EventListener](#eventlistener) | No| Callback of the event listener to remove.|
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p99037299364"><a name="p99037299364"></a><a name="p99037299364"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1690372953611"><a name="p1690372953611"></a><a name="p1690372953611"></a>Description</p> ```
</th> const workerInstance = new worker.Worker("workers/worker.js");
</tr> workerInstance.off("alert");
</thead> ```
<tbody><tr id="row2090362933610"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1190462923619"><a name="p1190462923619"></a><a name="p1190462923619"></a>type</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p12904192913367"><a name="p12904192913367"></a><a name="p12904192913367"></a>string</p> ### terminate
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p090462973617"><a name="p090462973617"></a><a name="p090462973617"></a>Yes</p> terminate(): void
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p20904122918367"><a name="p20904122918367"></a><a name="p20904122918367"></a>Type of the event for which the event listener is removed.</p>
</td>
</tr>
<tr id="row690452973612"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p12904329163616"><a name="p12904329163616"></a><a name="p12904329163616"></a>listener</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p2904429173617"><a name="p2904429173617"></a><a name="p2904429173617"></a><a href="#section53411747134914">EventListener</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p6904152916366"><a name="p6904152916366"></a><a name="p6904152916366"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p29042297361"><a name="p29042297361"></a><a name="p29042297361"></a>Callback of the event listener to remove.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js");
workerInstance.off("alert");
```
### terminate<a name="section17586211104214"></a>
terminate\(\): void
Terminates the worker thread to stop the worker from receiving messages. Terminates the worker thread to stop the worker from receiving messages.
- Example **Example**
``` ```
const workerInstance = new worker.Worker("workers/worker.js") const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.terminate() workerInstance.terminate()
``` ```
### onexit<a name="section1478913292320"></a> ### onexit
onexit?: \(code: number\) =\> void onexit?: (code: number) =&gt; void
Defines the event handler to be called when the worker exits. The handler is executed in the host thread. Defines the event handler to be called when the worker exits. The handler is executed in the host thread.
- Parameters **Parameters**
<a name="table144251138562"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row194251138269"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1642515387612"><a name="p1642515387612"></a><a name="p1642515387612"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | code | number | No| Code indicating the worker exit state.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p542513381612"><a name="p542513381612"></a><a name="p542513381612"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p1642513812611"><a name="p1642513812611"></a><a name="p1642513812611"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p0425133812610"><a name="p0425133812610"></a><a name="p0425133812610"></a>Description</p> const workerInstance = new worker.Worker("workers/worker.js")
</th> workerInstance.onexit = function(e) {
</tr> console.log("onexit")
</thead> }
<tbody><tr id="row1742512381861"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p24258382612"><a name="p24258382612"></a><a name="p24258382612"></a>code</p> ```
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p174261438564"><a name="p174261438564"></a><a name="p174261438564"></a>number</p>
</td> ### onerror
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1842612383620"><a name="p1842612383620"></a><a name="p1842612383620"></a>No</p>
</td> onerror?: (err: ErrorEvent) =&gt; void
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1242614381868"><a name="p1242614381868"></a><a name="p1242614381868"></a>Code indicating the worker exit state.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.onexit = function(e) {
console.log("onexit")
}
```
### onerror<a name="section89811422210"></a>
onerror?: \(err: ErrorEvent\) =\> void
Defines the event handler to be called when an exception occurs during worker execution. The event handler is executed in the host thread. Defines the event handler to be called when an exception occurs during worker execution. The event handler is executed in the host thread.
- Parameters **Parameters**
<a name="table69831416228"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row8989145222"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1298181418228"><a name="p1298181418228"></a><a name="p1298181418228"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | err | [ErrorEvent](#errorevent) | No| Error data.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p49801492217"><a name="p49801492217"></a><a name="p49801492217"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p189810140222"><a name="p189810140222"></a><a name="p189810140222"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1899131418229"><a name="p1899131418229"></a><a name="p1899131418229"></a>Description</p> const workerInstance = new worker.Worker("workers/worker.js")
</th> workerInstance.onerror = function(e) {
</tr> console.log("onerror")
</thead> }
<tbody><tr id="row699191413222"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p09919145226"><a name="p09919145226"></a><a name="p09919145226"></a>err</p> ```
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p1099214172218"><a name="p1099214172218"></a><a name="p1099214172218"></a><a href="#section11241623172418">ErrorEvent</a></p>
</td> ### onmessage
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1199111442211"><a name="p1199111442211"></a><a name="p1199111442211"></a>No</p>
</td> onmessage?: (event: MessageEvent) =&gt; void
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p89991432215"><a name="p89991432215"></a><a name="p89991432215"></a>Error data.</p>
</td> Defines the event handler to be called when the host thread receives a message created by itself and sent by the worker through the **parentPort.postMessage**. The event handler is executed in the host thread.
</tr>
</tbody> **Parameters**
</table>
| Name| Type| Mandatory| Description|
- Example | -------- | -------- | -------- | -------- |
| event | [MessageEvent](#messageevent) | No| Message received.|
```
const workerInstance = new worker.Worker("workers/worker.js") **Example**
workerInstance.onerror = function(e) {
console.log("onerror") ```
} const workerInstance = new worker.Worker("workers/worker.js")
``` workerInstance.onmessage = function(e) {
console.log("onerror")
}
### onmessage<a name="section516520044515"></a> ```
onmessage?: \(event: MessageEvent\) =\> void
### onmessageerror
Defines the event handler to be called when the host thread receives a message created by itself and sent by the worker through the **parentPort.postMessage**. The event handler is executed in the host thread.
onmessageerror?: (event: MessageEvent) =&gt; void
- Parameters
<a name="table216615019451"></a>
<table><thead align="left"><tr id="row416618034516"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p17166180154519"><a name="p17166180154519"></a><a name="p17166180154519"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p7166605458"><a name="p7166605458"></a><a name="p7166605458"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p1916610174515"><a name="p1916610174515"></a><a name="p1916610174515"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p516610024519"><a name="p516610024519"></a><a name="p516610024519"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row10166407457"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p61667010455"><a name="p61667010455"></a><a name="p61667010455"></a>event</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p4166170164515"><a name="p4166170164515"></a><a name="p4166170164515"></a><a href="#section191271455124710">MessageEvent</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p016719074513"><a name="p016719074513"></a><a name="p016719074513"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p816770194518"><a name="p816770194518"></a><a name="p816770194518"></a>Message received.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.onmessage = function(e) {
console.log("onerror")
}
```
### onmessageerror<a name="section85981145102714"></a>
onmessageerror?: \(event: MessageEvent\) =\> void
Defines the event handler to be called when the worker receives a message that cannot be serialized. The event handler is executed in the host thread. Defines the event handler to be called when the worker receives a message that cannot be serialized. The event handler is executed in the host thread.
- Parameters **Parameters**
<a name="table195981745202716"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row2059984512271"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p14599174562718"><a name="p14599174562718"></a><a name="p14599174562718"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | event | [MessageEvent](#messageevent) | No| Error data.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p135991645152710"><a name="p135991645152710"></a><a name="p135991645152710"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p1159924522712"><a name="p1159924522712"></a><a name="p1159924522712"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p8599194522717"><a name="p8599194522717"></a><a name="p8599194522717"></a>Description</p> const workerInstance = new worker.Worker("workers/worker.js")
</th> workerInstance.onmessageerror= function(e) {
</tr> console.log("onmessageerror")
</thead> }
<tbody><tr id="row5599145102715"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p45991645172719"><a name="p45991645172719"></a><a name="p45991645172719"></a>event</p> ```
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p135991645122712"><a name="p135991645122712"></a><a name="p135991645122712"></a><a href="#section191271455124710">MessageEvent</a></p>
</td> ## EventTarget
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p18599134519278"><a name="p18599134519278"></a><a name="p18599134519278"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p10600134514271"><a name="p10600134514271"></a><a name="p10600134514271"></a>Error data.</p> ### addEventListener
</td>
</tr> addEventListener(type: string, listener: EventListener): void
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.onmessageerror= function(e) {
console.log("onmessageerror")
}
```
## EventTarget<a name="section256019311465"></a>
### addEventListener<a name="section16405103834511"></a>
addEventListener\(type: string, listener: EventListener\): void
Adds an event listener to the worker. Adds an event listener to the worker.
- Parameters **Parameters**
<a name="table12405138134519"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row1040553815452"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1040523804519"><a name="p1040523804519"></a><a name="p1040523804519"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the event to listen for.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p740553818457"><a name="p740553818457"></a><a name="p740553818457"></a>Type</p> | listener | [EventListener](#eventlistener) | Yes| Callback to invoke when an event of the specified type occurs.|
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p11405183814513"><a name="p11405183814513"></a><a name="p11405183814513"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p54066385459"><a name="p54066385459"></a><a name="p54066385459"></a>Description</p> ```
</th> const workerInstance = new worker.Worker("workers/worker.js")
</tr> workerInstance.addEventListener("alert", (e)=>{
</thead> console.log("alert listener callback");
<tbody><tr id="row94061238174510"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p194061438164512"><a name="p194061438164512"></a><a name="p194061438164512"></a>type</p> })
</td> ```
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p8406163864513"><a name="p8406163864513"></a><a name="p8406163864513"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p4406173816452"><a name="p4406173816452"></a><a name="p4406173816452"></a>Yes</p> ### removeEventListener
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p440603894519"><a name="p440603894519"></a><a name="p440603894519"></a>Type of the event to listen for.</p> removeEventListener(type: string, callback?: EventListener): void
</td>
</tr>
<tr id="row1840693864519"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1140603814450"><a name="p1140603814450"></a><a name="p1140603814450"></a>listener</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p104061338184515"><a name="p104061338184515"></a><a name="p104061338184515"></a><a href="#section53411747134914">EventListener</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1040663812451"><a name="p1040663812451"></a><a name="p1040663812451"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p19406113874515"><a name="p19406113874515"></a><a name="p19406113874515"></a>Callback to invoke when an event of the specified type occurs.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.addEventListener("alert", (e)=>{
console.log("alert listener callback");
})
```
### removeEventListener<a name="section1437219413469"></a>
removeEventListener\(type: string, callback?: EventListener\): void
Removes an event listener for the worker. Removes an event listener for the worker.
- Parameters **Parameters**
<a name="table53725413461"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row837284174614"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1637216414614"><a name="p1637216414614"></a><a name="p1637216414614"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| Type of the event for which the event listener is removed.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p1037220454619"><a name="p1037220454619"></a><a name="p1037220454619"></a>Type</p> | callback | [EventListener](#eventlistener) | No| Callback of the event listener to remove.|
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p2372547464"><a name="p2372547464"></a><a name="p2372547464"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1937217484617"><a name="p1937217484617"></a><a name="p1937217484617"></a>Description</p> ```
</th> const workerInstance = new worker.Worker("workers/worker.js")
</tr> workerInstance.removeEventListener("alert")
</thead> ```
<tbody><tr id="row437224104618"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p193735414619"><a name="p193735414619"></a><a name="p193735414619"></a>type</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p63731542468"><a name="p63731542468"></a><a name="p63731542468"></a>string</p> ### dispatchEvent
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1437320413469"><a name="p1437320413469"></a><a name="p1437320413469"></a>Yes</p> dispatchEvent(event: Event): boolean
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p23739494618"><a name="p23739494618"></a><a name="p23739494618"></a>Type of the event for which the event listener is removed.</p>
</td>
</tr>
<tr id="row8373174114617"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p43731644464"><a name="p43731644464"></a><a name="p43731644464"></a>callback</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p1737324114614"><a name="p1737324114614"></a><a name="p1737324114614"></a><a href="#section53411747134914">EventListener</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p0373243465"><a name="p0373243465"></a><a name="p0373243465"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p132381754719"><a name="p132381754719"></a><a name="p132381754719"></a>Callback of the event listener to remove.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.removeEventListener("alert")
```
### dispatchEvent<a name="section1593912134916"></a>
dispatchEvent\(event: Event\): boolean
Dispatches the event defined for the worker. Dispatches the event defined for the worker.
- Parameters **Parameters**
<a name="table859431224913"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row859451213495"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p11594111215495"><a name="p11594111215495"></a><a name="p11594111215495"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | event | [Event](#event) | Yes| Event to dispatch.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p175946122494"><a name="p175946122494"></a><a name="p175946122494"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p85941912124919"><a name="p85941912124919"></a><a name="p85941912124919"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p2059551219493"><a name="p2059551219493"></a><a name="p2059551219493"></a>Description</p> | -------- | -------- |
</th> | boolean | Returns **true** if the event is dispatched successfully; returns **false** otherwise.|
</tr>
</thead> **Example**
<tbody><tr id="row45951812184915"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p11595612144910"><a name="p11595612144910"></a><a name="p11595612144910"></a>event</p>
</td> ```
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p17595712184913"><a name="p17595712184913"></a><a name="p17595712184913"></a><a href="#section1674694018507">Event</a></p> const workerInstance = new worker.Worker("workers/worker.js")
</td> workerInstance.dispatchEvent({type:"alert"})
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p20595101217490"><a name="p20595101217490"></a><a name="p20595101217490"></a>Yes</p> ```
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p18595712144914"><a name="p18595712144914"></a><a name="p18595712144914"></a>Event to dispatch.</p>
</td> ### removeAllListener
</tr>
</tbody> removeAllListener(): void
</table>
- Return values
<a name="table4536208105515"></a>
<table><thead align="left"><tr id="row25360810551"><th class="cellrowborder" valign="top" width="20.990000000000002%" id="mcps1.1.3.1.1"><p id="p2536685552"><a name="p2536685552"></a><a name="p2536685552"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="79.01%" id="mcps1.1.3.1.2"><p id="p185371287554"><a name="p185371287554"></a><a name="p185371287554"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row55371387555"><td class="cellrowborder" valign="top" width="20.990000000000002%" headers="mcps1.1.3.1.1 "><p id="p353718195511"><a name="p353718195511"></a><a name="p353718195511"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="79.01%" headers="mcps1.1.3.1.2 "><p id="p165388817555"><a name="p165388817555"></a><a name="p165388817555"></a>Returns<strong id="b2462162218403"><a name="b2462162218403"></a><a name="b2462162218403"></a> true</strong> if the event is dispatched successfully; returns <strong id="b459675193317"><a name="b459675193317"></a><a name="b459675193317"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.dispatchEvent({type:"alert"})
```
### removeAllListener<a name="section1795215505533"></a>
removeAllListener\(\): void
Removes all event listeners for the worker. Removes all event listeners for the worker.
- Example **Example**
``` ```
const workerInstance = new worker.Worker("workers/worker.js") const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.removeAllListener({type:"alert"}) workerInstance.removeAllListener({type:"alert"})
``` ```
## DedicatedWorkerGlobalScope<a name="section36872023123912"></a> ## DedicatedWorkerGlobalScope
Implements communication between the worker thread and the host thread. The **postMessage** API is used to send messages to the host thread, and the **close** API is used to terminate the worker thread. The **DedicatedWorkerGlobalScope** class inherits from [WorkerGlobalScope](#section12882825611). Implements communication between the worker thread and the host thread. The **postMessage** API is used to send messages to the host thread, and the **close** API is used to terminate the worker thread. The **DedicatedWorkerGlobalScope** class inherits from [WorkerGlobalScope](#workerglobalscope).
### postMessage<a name="section1570345794013"></a>
postMessage\(message: Object, options?: PostMessageOptions\): void ### postMessage
postMessage(message: Object, options?: PostMessageOptions): void
Sends a message to the host thread from the worker. Sends a message to the host thread from the worker.
- Parameters **Parameters**
<a name="table137041557154020"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row97049574404"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p0704165764012"><a name="p0704165764012"></a><a name="p0704165764012"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | message | Object | Yes| Data to be sent to the worker.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p1570465764014"><a name="p1570465764014"></a><a name="p1570465764014"></a>Type</p> | options | [PostMessageOptions](#postmessageoptions) | No| **ArrayBuffer** instances that can be transferred. The **transferList** array cannot contain **null**.|
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p15704157104011"><a name="p15704157104011"></a><a name="p15704157104011"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p6704115794013"><a name="p6704115794013"></a><a name="p6704115794013"></a>Description</p> ```
</th> // main.js
</tr> import worker from '@ohos.worker';
</thead> const workerInstance = new worker.Worker("workers/worker.js")
<tbody><tr id="row11704165784014"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p16704357174017"><a name="p16704357174017"></a><a name="p16704357174017"></a>message</p> workerInstance.postMessage("hello world")
</td> workerInstance.onmessage = function(e) {
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p970435754019"><a name="p970435754019"></a><a name="p970435754019"></a>Object</p> console.log("receive data from worker.js")
</td> }
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1670405744010"><a name="p1670405744010"></a><a name="p1670405744010"></a>Yes</p> ```
</td> ```
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p10704457184013"><a name="p10704457184013"></a><a name="p10704457184013"></a>Data to be sent to the worker.</p> // worker.js
</td> import worker from '@ohos.worker';
</tr> const parentPort = worker.parentPort;
<tr id="row15704957194018"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p3705125754018"><a name="p3705125754018"></a><a name="p3705125754018"></a>options</p> parentPort.onmessage = function(e){
</td> parentPort.postMessage("receive data from main.js")
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p19705125716402"><a name="p19705125716402"></a><a name="p19705125716402"></a><a href="#section176401093245">PostMessageOptions</a></p> }
</td> ```
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1570535784016"><a name="p1570535784016"></a><a name="p1570535784016"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p8705857154016"><a name="p8705857154016"></a><a name="p8705857154016"></a><strong id="b39393445223"><a name="b39393445223"></a><a name="b39393445223"></a>ArrayBuffer</strong> instances that can be transferred. The <strong id="b161046012311"><a name="b161046012311"></a><a name="b161046012311"></a>transferList</strong> array cannot contain <strong id="b151041600231"><a name="b151041600231"></a><a name="b151041600231"></a>null</strong>.</p> ### close
</td>
</tr> close(): void
</tbody>
</table>
- Example
```
// main.js
import worker from "@ohos.worker";
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.postMessage("hello world")
workerInstance.onmessage = function(e) {
console.log("receive data from worker.js")
}
```
```
// worker.js
import worker from "@ohos.worker";
const parentPort = worker.parentPort;
parentPort.onmessage = function(e){
parentPort.postMessage("receive data from main.js")
}
```
### close<a name="section849610376427"></a>
close\(\): void
Closes the worker thread to stop the worker from receiving messages. Closes the worker thread to stop the worker from receiving messages.
- Example **Example**
``` ```
// main.js // main.js
import worker from '@ohos.worker'; import worker from '@ohos.worker';
const workerInstance = new worker.Worker("workers/worker.js") const workerInstance = new worker.Worker("workers/worker.js")
``` ```
```
``` // worker.js
// worker.js import worker from '@ohos.worker';
import worker from "@ohos.worker"; const parentPort = worker.parentPort;
const parentPort = worker.parentPort; parentPort.onmessage = function(e) {
parentPort.onmessage = function(e) { parentPort.close()
parentPort.close() }
} ```
```
### onmessage
### onmessage<a name="section1371121184815"></a>
onmessage?: (event: MessageEvent) =&gt; void
onmessage?: \(event: MessageEvent\) =\> void
Defines the event handler to be called when the worker thread receives a message sent by the host thread through **worker.postMessage**. The event handler is executed in the worker thread.
Defines the event handler to be called when the worker thread receives a message sent by the host thread through **worker.postMessage**. The event handler is executed in the worker thread.
**Parameters**
- Parameters
| Name| Type| Mandatory| Description|
<a name="table137182118481"></a> | -------- | -------- | -------- | -------- |
<table><thead align="left"><tr id="row4372182164815"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p2372521144814"><a name="p2372521144814"></a><a name="p2372521144814"></a>Name</p> | event | [MessageEvent](#messageevent) | No| Message received.|
</th>
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p437213213483"><a name="p437213213483"></a><a name="p437213213483"></a>Type</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p15372182118484"><a name="p15372182118484"></a><a name="p15372182118484"></a>Mandatory</p> ```
</th> // main.js
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1637282113484"><a name="p1637282113484"></a><a name="p1637282113484"></a>Description</p> import worker from '@ohos.worker';
</th> const workerInstance = new worker.Worker("workers/worker.js")
</tr> workerInstance.postMessage("hello world")
</thead> ```
<tbody><tr id="row103721521164820"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p13721821124817"><a name="p13721821124817"></a><a name="p13721821124817"></a>event</p> ```
</td> // worker.js
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p16372172144812"><a name="p16372172144812"></a><a name="p16372172144812"></a><a href="#section191271455124710">MessageEvent</a></p> import worker from '@ohos.worker';
</td> const parentPort = worker.parentPort;
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p1737232117486"><a name="p1737232117486"></a><a name="p1737232117486"></a>No</p> parentPort.onmessage = function(e) {
</td> console.log("receive main.js message")
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p6372142184820"><a name="p6372142184820"></a><a name="p6372142184820"></a>Message received.</p> }
</td> ```
</tr>
</tbody>
</table> ### onmessageerror
- Example onmessageerror?: (event: MessageEvent) =&gt; void
```
// main.js
import worker from '@ohos.worker';
const workerInstance = new worker.Worker("workers/worker.js")
workerInstance.postMessage("hello world")
```
```
// worker.js
import worker from "@ohos.worker";
const parentPort = worker.parentPort;
parentPort.onmessage = function(e) {
console.log("receive main.js message")
}
```
### onmessageerror<a name="section16116749135015"></a>
onmessageerror?: \(event: MessageEvent\) =\> void
Defines the event handler to be called when the worker receives a message that cannot be deserialized. The event handler is executed in the worker thread. Defines the event handler to be called when the worker receives a message that cannot be deserialized. The event handler is executed in the worker thread.
- Parameters **Parameters**
<a name="table21169494501"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row1411794917507"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p2117134985012"><a name="p2117134985012"></a><a name="p2117134985012"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | event | [MessageEvent](#messageevent) | No| Error data.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p161171949165016"><a name="p161171949165016"></a><a name="p161171949165016"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p5117104915501"><a name="p5117104915501"></a><a name="p5117104915501"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p111734915011"><a name="p111734915011"></a><a name="p111734915011"></a>Description</p> // main.js
</th> import worker from '@ohos.worker';
</tr> const workerInstance = new worker.Worker("workers/worker.js")
</thead> ```
<tbody><tr id="row311784995013"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1117249195020"><a name="p1117249195020"></a><a name="p1117249195020"></a>event</p> ```
</td> // worker.js
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p10117154917508"><a name="p10117154917508"></a><a name="p10117154917508"></a><a href="#section191271455124710">MessageEvent</a></p> import worker from '@ohos.worker';
</td> const parentPort = worker.parentPort;
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p711744911507"><a name="p711744911507"></a><a name="p711744911507"></a>No</p> parentPort.onmessageerror= function(e) {
</td> console.log("worker.js onmessageerror")
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p201188499500"><a name="p201188499500"></a><a name="p201188499500"></a>Error data.</p> }
</td> ```
</tr>
</tbody>
</table> ## PostMessageOptions
- Example Specifies the object whose ownership needs to be transferred during data transfer. The object must be **ArrayBuffer**.
``` | Name| Type| Readable| Writable| Description|
// main.js | -------- | -------- | -------- | -------- | -------- |
import worker from '@ohos.worker'; | transfer | Object[] | Yes| Yes| **ArrayBuffer** array used to transfer the ownership.|
const workerInstance = new worker.Worker("workers/worker.js")
```
## Event
```
// worker.js
import worker from "@ohos.worker";
const parentPort = worker.parentPort;
parentPort.onmessageerror= function(e) {
console.log("worker.js onmessageerror")
}
```
## PostMessageOptions<a name="section176401093245"></a>
Specifies the object whose ownership needs to be transferred during data transfer. The object must be **ArrayBuffer**.
<a name="table1564010972415"></a>
<table><thead align="left"><tr id="row3640129112415"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p1364089142412"><a name="p1364089142412"></a><a name="p1364089142412"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p564013912415"><a name="p564013912415"></a><a name="p564013912415"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p1264016913243"><a name="p1264016913243"></a><a name="p1264016913243"></a>Readable</p>
</th>
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p1164089172413"><a name="p1164089172413"></a><a name="p1164089172413"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p7640169172410"><a name="p7640169172410"></a><a name="p7640169172410"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1064016982410"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p156410962416"><a name="p156410962416"></a><a name="p156410962416"></a>transfer</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p59311042152414"><a name="p59311042152414"></a><a name="p59311042152414"></a>Object[]</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p17641179102414"><a name="p17641179102414"></a><a name="p17641179102414"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1864112919241"><a name="p1864112919241"></a><a name="p1864112919241"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p18641139162415"><a name="p18641139162415"></a><a name="p18641139162415"></a><strong id="b29193411847"><a name="b29193411847"></a><a name="b29193411847"></a>ArrayBuffer</strong> array used to transfer the ownership.</p>
</td>
</tr>
</tbody>
</table>
## Event<a name="section1674694018507"></a>
Defines the event. Defines the event.
<a name="table127461440175015"></a> | Name| Type| Readable| Writable| Description|
<table><thead align="left"><tr id="row10746640145010"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p1174613403508"><a name="p1174613403508"></a><a name="p1174613403508"></a>Name</p> | -------- | -------- | -------- | -------- | -------- |
</th> | type | string | Yes| No| Type of the event.|
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p1274614055018"><a name="p1274614055018"></a><a name="p1274614055018"></a>Type</p> | timeStamp | number | Yes| No| Timestamp (accurate to millisecond) when the event is created.|
</th>
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p37460409501"><a name="p37460409501"></a><a name="p37460409501"></a>Readable</p>
</th> ## EventListener
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p137461340145015"><a name="p137461340145015"></a><a name="p137461340145015"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p874616406508"><a name="p874616406508"></a><a name="p874616406508"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row117475400509"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p1074754095015"><a name="p1074754095015"></a><a name="p1074754095015"></a>type</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p5747240135016"><a name="p5747240135016"></a><a name="p5747240135016"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p197471409508"><a name="p197471409508"></a><a name="p197471409508"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1974719408501"><a name="p1974719408501"></a><a name="p1974719408501"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p974715404504"><a name="p974715404504"></a><a name="p974715404504"></a>Type of the event.</p>
</td>
</tr>
<tr id="row1360594017519"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p3605340165112"><a name="p3605340165112"></a><a name="p3605340165112"></a>timeStamp</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p260516404519"><a name="p260516404519"></a><a name="p260516404519"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p1360513406518"><a name="p1360513406518"></a><a name="p1360513406518"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p86051440205116"><a name="p86051440205116"></a><a name="p86051440205116"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p860554020511"><a name="p860554020511"></a><a name="p860554020511"></a>Timestamp (accurate to millisecond) when the event is created.</p>
</td>
</tr>
</tbody>
</table>
## EventListener<a name="section53411747134914"></a>
Implements event listening. Implements event listening.
### \(evt: Event\): void | Promise<void\><a name="section1915072122913"></a>
### (evt: Event): void | Promise&lt;void&gt;
Specifies the callback to invoke. Specifies the callback to invoke.
- Parameters **Parameters**
<a name="table9785174213215"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row3786042153218"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p8786154293216"><a name="p8786154293216"></a><a name="p8786154293216"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | evt | [Event](#event) | Yes| Event class for the callback to invoke.|
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p127865425324"><a name="p127865425324"></a><a name="p127865425324"></a>Type</p>
</th> **Return value**
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p678610423329"><a name="p678610423329"></a><a name="p678610423329"></a>Mandatory</p>
</th> | Type| Description|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p87861442183219"><a name="p87861442183219"></a><a name="p87861442183219"></a>Description</p> | -------- | -------- |
</th> | void&nbsp;\|&nbsp;Promise&lt;void&gt; | Returns no value or returns a **Promise**.|
</tr>
</thead> **Example**
<tbody><tr id="row1478624283213"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1078654213218"><a name="p1078654213218"></a><a name="p1078654213218"></a>evt</p>
</td> ```
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p14893142103417"><a name="p14893142103417"></a><a name="p14893142103417"></a><a href="#section1674694018507">Event</a></p> const workerInstance = new worker.Worker("workers/worker.js");
</td> workerInstance.addEventListener("alert", (e)=>{
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p14786194293211"><a name="p14786194293211"></a><a name="p14786194293211"></a>Yes</p> console.log("alert listener callback");
</td> })
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1178674203218"><a name="p1178674203218"></a><a name="p1178674203218"></a>Event class for the callback to invoke.</p> ```
</td>
</tr>
</tbody> ## ErrorEvent
</table>
Provides detailed information about the exception occurred during worker execution. The **ErrorEvent** class inherits from [Event](#event).
- Return values
| Name| Type| Readable| Writable| Description|
<a name="t3e93239d9b134b80957bcdd4acb05291"></a> | -------- | -------- | -------- | -------- | -------- |
<table><thead align="left"><tr id="recc81d9f995d44aa87ba9d714b756569"><th class="cellrowborder" valign="top" width="21.84%" id="mcps1.1.3.1.1"><p id="aa3137ce511d140fba6cc93513a7a91e3"><a name="aa3137ce511d140fba6cc93513a7a91e3"></a><a name="aa3137ce511d140fba6cc93513a7a91e3"></a>Type</p> | message | string | Yes| No| Information about the exception.|
</th> | filename | string | Yes| No| File where the exception is located.|
<th class="cellrowborder" valign="top" width="78.16%" id="mcps1.1.3.1.2"><p id="a4ba8ead9ee7b48298d9a6ed10659f13b"><a name="a4ba8ead9ee7b48298d9a6ed10659f13b"></a><a name="a4ba8ead9ee7b48298d9a6ed10659f13b"></a>Description</p> | lineno | number | Yes| No| Number of the line where the exception is located.|
</th> | colno | number | Yes| No| Number of the column where the exception is located.|
</tr> | error | Object | Yes| No| Type of the exception.|
</thead>
<tbody><tr id="r64430cb15b54497f88ea6330b9a7454c"><td class="cellrowborder" valign="top" width="21.84%" headers="mcps1.1.3.1.1 "><p id="p132211316155619"><a name="p132211316155619"></a><a name="p132211316155619"></a>void | Promise&lt;void&gt;</p>
</td> ## MessageEvent
<td class="cellrowborder" valign="top" width="78.16%" headers="mcps1.1.3.1.2 "><p id="a1c9b8d1829ef489e9e0fd1863190d228"><a name="a1c9b8d1829ef489e9e0fd1863190d228"></a><a name="a1c9b8d1829ef489e9e0fd1863190d228"></a>Returns no value or returns a <strong id="b33281532185513"><a name="b33281532185513"></a><a name="b33281532185513"></a>Promise</strong>.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
const workerInstance = new worker.Worker("workers/worker.js");
workerInstance.addEventListener("alert", (e)=>{
console.log("alert listener callback");
})
```
## ErrorEvent<a name="section11241623172418"></a>
Provides detailed information about the exception occurred during worker execution. The **ErrorEvent** class inherits from [Event](#section1674694018507).
<a name="table1224152319247"></a>
<table><thead align="left"><tr id="row19241723192418"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p10241192313249"><a name="p10241192313249"></a><a name="p10241192313249"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p924292382417"><a name="p924292382417"></a><a name="p924292382417"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p11242202318246"><a name="p11242202318246"></a><a name="p11242202318246"></a>Readable</p>
</th>
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p1424272312240"><a name="p1424272312240"></a><a name="p1424272312240"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p15242152362419"><a name="p15242152362419"></a><a name="p15242152362419"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row8242122316243"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p12428233244"><a name="p12428233244"></a><a name="p12428233244"></a>message</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p3242112322418"><a name="p3242112322418"></a><a name="p3242112322418"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p524262312244"><a name="p524262312244"></a><a name="p524262312244"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p13242102362418"><a name="p13242102362418"></a><a name="p13242102362418"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p92421123192418"><a name="p92421123192418"></a><a name="p92421123192418"></a>Information about the exception.</p>
</td>
</tr>
<tr id="row0242223192410"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p7242142392413"><a name="p7242142392413"></a><a name="p7242142392413"></a>filename</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p92421239248"><a name="p92421239248"></a><a name="p92421239248"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p424215236241"><a name="p424215236241"></a><a name="p424215236241"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p0242223172411"><a name="p0242223172411"></a><a name="p0242223172411"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p524262320241"><a name="p524262320241"></a><a name="p524262320241"></a>File where the exception is located.</p>
</td>
</tr>
<tr id="row434214463257"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p5342164692515"><a name="p5342164692515"></a><a name="p5342164692515"></a>lineno</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p13342164622515"><a name="p13342164622515"></a><a name="p13342164622515"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p13342194619258"><a name="p13342194619258"></a><a name="p13342194619258"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1934244652517"><a name="p1934244652517"></a><a name="p1934244652517"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p23428465259"><a name="p23428465259"></a><a name="p23428465259"></a>Number of the line where the exception is located.</p>
</td>
</tr>
<tr id="row888217500256"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p78821850182511"><a name="p78821850182511"></a><a name="p78821850182511"></a>colno</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p16882155017251"><a name="p16882155017251"></a><a name="p16882155017251"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p188826506257"><a name="p188826506257"></a><a name="p188826506257"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1088219502255"><a name="p1088219502255"></a><a name="p1088219502255"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p1288319505259"><a name="p1288319505259"></a><a name="p1288319505259"></a>Number of the column where the exception is located.</p>
</td>
</tr>
<tr id="row81624652614"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p7161746182619"><a name="p7161746182619"></a><a name="p7161746182619"></a>error</p>
</td>
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p316846162613"><a name="p316846162613"></a><a name="p316846162613"></a>Object</p>
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p61764614263"><a name="p61764614263"></a><a name="p61764614263"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p1817104615262"><a name="p1817104615262"></a><a name="p1817104615262"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p3175462267"><a name="p3175462267"></a><a name="p3175462267"></a>Type of the exception.</p>
</td>
</tr>
</tbody>
</table>
## MessageEvent<a name="section191271455124710"></a>
Holds the data transferred between worker threads. Holds the data transferred between worker threads.
<a name="table10128155524711"></a> | Name| Type| Readable| Writable| Description|
<table><thead align="left"><tr id="row1412855554719"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p61283559473"><a name="p61283559473"></a><a name="p61283559473"></a>Name</p> | -------- | -------- | -------- | -------- | -------- |
</th> | data | T | Yes| No| Data transferred between threads.|
<th class="cellrowborder" valign="top" width="10.86%" id="mcps1.1.6.1.2"><p id="p61281155134713"><a name="p61281155134713"></a><a name="p61281155134713"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.34%" id="mcps1.1.6.1.3"><p id="p1312855520479"><a name="p1312855520479"></a><a name="p1312855520479"></a>Readable</p> ## WorkerGlobalScope
</th>
<th class="cellrowborder" valign="top" width="11.51%" id="mcps1.1.6.1.4"><p id="p612855514717"><a name="p612855514717"></a><a name="p612855514717"></a>Writable</p> Defines the running environment of the worker thread. The **WorkerGlobalScope** class inherits from [EventTarget](#eventtarget).
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p17128755194716"><a name="p17128755194716"></a><a name="p17128755194716"></a>Description</p>
</th> ### Attributes
</tr>
</thead> | Name| Type| Readable| Writable| Description|
<tbody><tr id="row11128105544715"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p141281755204713"><a name="p141281755204713"></a><a name="p141281755204713"></a>data</p> | -------- | -------- | -------- | -------- | -------- |
</td> | name | string | Yes| No| Worker name specified when there is a new worker.|
<td class="cellrowborder" valign="top" width="10.86%" headers="mcps1.1.6.1.2 "><p id="p9128655144715"><a name="p9128655144715"></a><a name="p9128655144715"></a>T</p> | self | [WorkerGlobalScope](#workerglobalscope)&nbsp;&amp;&nbsp;typeof&nbsp;globalThis | Yes| No| WorkerGlobalScope.|
</td>
<td class="cellrowborder" valign="top" width="9.34%" headers="mcps1.1.6.1.3 "><p id="p91286553472"><a name="p91286553472"></a><a name="p91286553472"></a>Yes</p>
</td> ### onerror
<td class="cellrowborder" valign="top" width="11.51%" headers="mcps1.1.6.1.4 "><p id="p111292558478"><a name="p111292558478"></a><a name="p111292558478"></a>No</p>
</td> onerror?: (ev: ErrorEvent) =&gt; void
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p612905514479"><a name="p612905514479"></a><a name="p612905514479"></a>Data transferred between threads.</p>
</td>
</tr>
</tbody>
</table>
## WorkerGlobalScope<a name="section12882825611"></a>
Defines the running environment of the worker thread. The **WorkerGlobalScope** class inherits from [EventTarget](#section256019311465).
### Attributes<a name="section3626134611546"></a>
<a name="table5668145611542"></a>
<table><thead align="left"><tr id="row196681856175413"><th class="cellrowborder" valign="top" width="15.870000000000001%" id="mcps1.1.6.1.1"><p id="p466895614541"><a name="p466895614541"></a><a name="p466895614541"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="18.18%" id="mcps1.1.6.1.2"><p id="p466975610548"><a name="p466975610548"></a><a name="p466975610548"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="7.48%" id="mcps1.1.6.1.3"><p id="p176692565546"><a name="p176692565546"></a><a name="p176692565546"></a>Readable</p>
</th>
<th class="cellrowborder" valign="top" width="6.05%" id="mcps1.1.6.1.4"><p id="p5669185620548"><a name="p5669185620548"></a><a name="p5669185620548"></a>Writable</p>
</th>
<th class="cellrowborder" valign="top" width="52.42%" id="mcps1.1.6.1.5"><p id="p766916567549"><a name="p766916567549"></a><a name="p766916567549"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row15669185613547"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p16692567543"><a name="p16692567543"></a><a name="p16692567543"></a>name</p>
</td>
<td class="cellrowborder" valign="top" width="18.18%" headers="mcps1.1.6.1.2 "><p id="p12669256175418"><a name="p12669256175418"></a><a name="p12669256175418"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="7.48%" headers="mcps1.1.6.1.3 "><p id="p1266912564547"><a name="p1266912564547"></a><a name="p1266912564547"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="6.05%" headers="mcps1.1.6.1.4 "><p id="p166955618549"><a name="p166955618549"></a><a name="p166955618549"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p196697562549"><a name="p196697562549"></a><a name="p196697562549"></a>Worker name specified when there is a new worker.</p>
</td>
</tr>
<tr id="row1266905611549"><td class="cellrowborder" valign="top" width="15.870000000000001%" headers="mcps1.1.6.1.1 "><p id="p7669456155412"><a name="p7669456155412"></a><a name="p7669456155412"></a>self</p>
</td>
<td class="cellrowborder" valign="top" width="18.18%" headers="mcps1.1.6.1.2 "><p id="p36698567543"><a name="p36698567543"></a><a name="p36698567543"></a><a href="#section12882825611">WorkerGlobalScope</a> &amp; typeof globalThis</p>
</td>
<td class="cellrowborder" valign="top" width="7.48%" headers="mcps1.1.6.1.3 "><p id="p15669115675415"><a name="p15669115675415"></a><a name="p15669115675415"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="6.05%" headers="mcps1.1.6.1.4 "><p id="p106701356125415"><a name="p106701356125415"></a><a name="p106701356125415"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="52.42%" headers="mcps1.1.6.1.5 "><p id="p116701563546"><a name="p116701563546"></a><a name="p116701563546"></a>WorkerGlobalScope.</p>
</td>
</tr>
</tbody>
</table>
### onerror<a name="section1234812184551"></a>
onerror?: \(ev: ErrorEvent\) =\> void
Defines the event handler to be called when an exception occurs during worker execution. The event handler is executed in the worker thread. Defines the event handler to be called when an exception occurs during worker execution. The event handler is executed in the worker thread.
- Parameters **Parameters**
<a name="table434981814553"></a>
<table><thead align="left"><tr id="row11349131825513"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p18349131825511"><a name="p18349131825511"></a><a name="p18349131825511"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="16.24%" id="mcps1.1.5.1.2"><p id="p93491186552"><a name="p93491186552"></a><a name="p93491186552"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="7.6499999999999995%" id="mcps1.1.5.1.3"><p id="p1034921855514"><a name="p1034921855514"></a><a name="p1034921855514"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p19349201812556"><a name="p19349201812556"></a><a name="p19349201812556"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row43491218115511"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1935041812559"><a name="p1935041812559"></a><a name="p1935041812559"></a>ev</p>
</td>
<td class="cellrowborder" valign="top" width="16.24%" headers="mcps1.1.5.1.2 "><p id="p1135091805513"><a name="p1135091805513"></a><a name="p1135091805513"></a><a href="#section11241623172418">ErrorEvent</a></p>
</td>
<td class="cellrowborder" valign="top" width="7.6499999999999995%" headers="mcps1.1.5.1.3 "><p id="p535041814557"><a name="p535041814557"></a><a name="p535041814557"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p935017188559"><a name="p935017188559"></a><a name="p935017188559"></a>Error data.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
// main.js
import worker from '@ohos.worker';
const workerInstance = new worker.Worker("workers/worker.js")
```
```
// worker.js
import worker from "@ohos.worker";
const parentPort = worker.parentPort
parentPort.onerror = function(e){
console.log("worker.js onerror")
}
```
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| ev | [ErrorEvent](#errorevent) | No| Error data.|
**Example**
```
// main.js
import worker from '@ohos.worker';
const workerInstance = new worker.Worker("workers/worker.js")
```
```
// worker.js
import worker from '@ohos.worker';
const parentPort = worker.parentPort
parentPort.onerror = function(e){
console.log("worker.js onerror")
}
```
# XML Parsing and Generation<a name="EN-US_TOPIC_0000001166576450"></a> # XML Parsing and Generation
>![](../../public_sys-resources/icon-note.gif) **NOTE:** > ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
>The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The initial APIs of this module are supported since API version 8. Newly added APIs will be marked with a superscript to indicate their earliest API version.
## Modules to Import<a name="s56d19203690d4782bfc74069abb6bd71"></a>
## Modules to Import
``` ```
import xml from '@ohos.xml'; import xml from '@ohos.xml';
``` ```
## Required Permissions<a name="section11257113618419"></a> ## System Capabilities
None SystemCapability.Utils.Lang
## XmlSerializer<a name="section10300157155214"></a> ## XmlSerializer
### constructor<a name="section22631719185510"></a>
constructor\(buffer: ArrayBuffer | DataView, encoding?: string\) ### constructor
A constructor used to create an **XmlSerializer** instance. constructor(buffer: ArrayBuffer | DataView, encoding?: string)
- Parameters A constructor used to create an **XmlSerializer** instance.
<a name="table371837193011"></a> **Parameters**
<table><thead align="left"><tr id="row672173723013"><th class="cellrowborder" valign="top" width="10.05%" id="mcps1.1.5.1.1"><p id="p1272203710304"><a name="p1272203710304"></a><a name="p1272203710304"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="20.8%" id="mcps1.1.5.1.2"><p id="p1172103715308"><a name="p1172103715308"></a><a name="p1172103715308"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="7.86%" id="mcps1.1.5.1.3"><p id="p2072537153017"><a name="p2072537153017"></a><a name="p2072537153017"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1572193715303"><a name="p1572193715303"></a><a name="p1572193715303"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row673153793010"><td class="cellrowborder" valign="top" width="10.05%" headers="mcps1.1.5.1.1 "><p id="p197373763013"><a name="p197373763013"></a><a name="p197373763013"></a>buffer</p>
</td>
<td class="cellrowborder" valign="top" width="20.8%" headers="mcps1.1.5.1.2 "><p id="p1773337193020"><a name="p1773337193020"></a><a name="p1773337193020"></a>ArrayBuffer | DataView</p>
</td>
<td class="cellrowborder" valign="top" width="7.86%" headers="mcps1.1.5.1.3 "><p id="p27313376302"><a name="p27313376302"></a><a name="p27313376302"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p19731837133019"><a name="p19731837133019"></a><a name="p19731837133019"></a><strong id="b176576351735"><a name="b176576351735"></a><a name="b176576351735"></a>ArrayBuffer</strong> or <strong id="b14983539439"><a name="b14983539439"></a><a name="b14983539439"></a>DataView</strong> for storing the XML information to write.</p>
</td>
</tr>
<tr id="row873937133017"><td class="cellrowborder" valign="top" width="10.05%" headers="mcps1.1.5.1.1 "><p id="p573837113014"><a name="p573837113014"></a><a name="p573837113014"></a>encoding</p>
</td>
<td class="cellrowborder" valign="top" width="20.8%" headers="mcps1.1.5.1.2 "><p id="p1473837163016"><a name="p1473837163016"></a><a name="p1473837163016"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="7.86%" headers="mcps1.1.5.1.3 "><p id="p1574153711306"><a name="p1574153711306"></a><a name="p1574153711306"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p107416372308"><a name="p107416372308"></a><a name="p107416372308"></a>Encoding format.</p>
</td>
</tr>
</tbody>
</table>
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| buffer | ArrayBuffer&nbsp;\|&nbsp;DataView | Yes| **ArrayBuffer** or **DataView** for storing the XML information to write.|
| encoding | string | No| Encoding format.|
- Example **Example**
``` ```
var arrayBuffer = new ArrayBuffer(1024); var arrayBuffer = new ArrayBuffer(1024);
var bufView = new DataView(arrayBuffer); var bufView = new DataView(arrayBuffer);
var thatSer = new xml.XmlSerializer(bufView); var thatSer = new xml.XmlSerializer(bufView);
``` ```
### setAttributes<a name="section2473132013521"></a> ### setAttributes
setAttributes\(name: string, value: string\): void setAttributes(name: string, value: string): void
Sets an attribute. Sets an attribute.
- Parameters **Parameters**
<a name="table89671419586"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row1296813405817"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p9968649587"><a name="p9968649587"></a><a name="p9968649587"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | name | string | Yes| Key of the attribute.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p896816415583"><a name="p896816415583"></a><a name="p896816415583"></a>Type</p> | value | string | Yes| Value of the attribute.|
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p19684475811"><a name="p19684475811"></a><a name="p19684475811"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p15969124195818"><a name="p15969124195818"></a><a name="p15969124195818"></a>Description</p> ```
</th> var thatSer = new xml.XmlSerializer(bufView);
</tr> thatSer.setAttributes("importance", "high");
</thead> ```
<tbody><tr id="row1096919414582"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p19764172525816"><a name="p19764172525816"></a><a name="p19764172525816"></a>name</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p209702418584"><a name="p209702418584"></a><a name="p209702418584"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p20970240582"><a name="p20970240582"></a><a name="p20970240582"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p5218548142218"><a name="p5218548142218"></a><a name="p5218548142218"></a>Key of the attribute.</p>
</td>
</tr>
<tr id="row14970184165815"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p1996411319585"><a name="p1996411319585"></a><a name="p1996411319585"></a>value</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p7961171375814"><a name="p7961171375814"></a><a name="p7961171375814"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p1995771345820"><a name="p1995771345820"></a><a name="p1995771345820"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p19532013165816"><a name="p19532013165816"></a><a name="p19532013165816"></a>Value of the attribute.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var thatSer = new xml.XmlSerializer(bufView);
thatSer.setAttributes("importance", "high");
```
### addEmptyElement<a name="section66211195611"></a>
addEmptyElement\(name: string\): void
Adds an empty element.
- Parameters ### addEmptyElement
addEmptyElement(name: string): void
Adds an empty element.
<a name="table14404194817135"></a> **Parameters**
<table><thead align="left"><tr id="row14051748131319"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1440574821316"><a name="p1440574821316"></a><a name="p1440574821316"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p204051548111311"><a name="p204051548111311"></a><a name="p204051548111311"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p34056481132"><a name="p34056481132"></a><a name="p34056481132"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p5405548161318"><a name="p5405548161318"></a><a name="p5405548161318"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row14063484130"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p13406348101319"><a name="p13406348101319"></a><a name="p13406348101319"></a>name</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p340613481134"><a name="p340613481134"></a><a name="p340613481134"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p14062486135"><a name="p14062486135"></a><a name="p14062486135"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p2406248191315"><a name="p2406248191315"></a><a name="p2406248191315"></a>Name of the empty element to add.</p>
</td>
</tr>
</tbody>
</table>
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| name | string | Yes| Name of the empty element to add.|
- Example **Example**
``` ```
var thatSer = new xml.XmlSerializer(bufView); var thatSer = new xml.XmlSerializer(bufView);
thatSer.addEmptyElement("b"); // => <b/> thatSer.addEmptyElement("b"); // => <b/>
``` ```
### setDeclaration<a name="section86274211981"></a> ### setDeclaration
setDeclaration\(\): void setDeclaration(): void
Sets a declaration. Sets a declaration.
- Example **Example**
``` ```
var thatSer = new xml.XmlSerializer(bufView); var thatSer = new xml.XmlSerializer(bufView);
thatSer.setDeclaration() // => <?xml version="1.0" encoding="utf-8"?>; thatSer.setDeclaration() // => <?xml version="1.0" encoding="utf-8"?>;
``` ```
### startElement<a name="section7242102181610"></a> ### startElement
startElement\(name: string\): void startElement(name: string): void
Writes the start tag based on the given element name. Writes the start tag based on the given element name.
- Parameters **Parameters**
<a name="table181414461248"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row714104612417"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p8141546112417"><a name="p8141546112417"></a><a name="p8141546112417"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | name | string | Yes| Name of the element.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p14151546172412"><a name="p14151546172412"></a><a name="p14151546172412"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p1615114619244"><a name="p1615114619244"></a><a name="p1615114619244"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p121514469247"><a name="p121514469247"></a><a name="p121514469247"></a>Description</p> var arrayBuffer = new ArrayBuffer(1024);
</th> var thatSer = new xml.XmlSerializer(arrayBuffer);
</tr> thatSer.startElement("notel");
</thead> thatSer.endElement();// => '<notel/>';
<tbody><tr id="row1615204662414"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p415114614249"><a name="p415114614249"></a><a name="p415114614249"></a>name</p> ```
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p6151246192420"><a name="p6151246192420"></a><a name="p6151246192420"></a>string</p>
</td> ### endElement
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p71574612247"><a name="p71574612247"></a><a name="p71574612247"></a>Yes</p>
</td> endElement(): void
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p415946132417"><a name="p415946132417"></a><a name="p415946132417"></a>Name of the element.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var arrayBuffer = new ArrayBuffer(1024);
var thatSer = new xml.XmlSerializer(arrayBuffer);
thatSer.startElement("notel");
thatSer.endElement();// => '<notel/>';
```
### endElement<a name="section357918382815"></a>
endElement\(\): void
Writes the end tag of the element. Writes the end tag of the element.
- Example **Example**
``` ```
var thatSer = new xml.XmlSerializer(bufView); var thatSer = new xml.XmlSerializer(bufView);
thatSer.setNamespace("h", "http://www.w3.org/TR/html4/"); thatSer.setNamespace("h", "http://www.w3.org/TR/html4/");
thatSer.startElement("table"); thatSer.startElement("table");
thatSer.setAttributes("importance", "high"); thatSer.setAttributes("importance", "high");
thatSer.setText("Happy"); thatSer.setText("Happy");
endElement(); // => <h:table importance="high" xmlns:h="http://www.w3.org/TR/html4/">Happy</h:table> endElement(); // => <h:table importance="high" xmlns:h="http://www.w3.org/TR/html4/">Happy</h:table>
``` ```
### setNamespace<a name="section04112422818"></a> ### setNamespace
setNamespace\(prefix: string, namespace: string\): void setNamespace(prefix: string, namespace: string): void
Sets the namespace for an element tag. Sets the namespace for an element tag.
- Parameters **Parameters**
<a name="table8646118202914"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row18646131812296"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p19646118172919"><a name="p19646118172919"></a><a name="p19646118172919"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | prefix | string | Yes| Prefix of the element and its child elements.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p364731813291"><a name="p364731813291"></a><a name="p364731813291"></a>Type</p> | namespace | string | Yes| Namespace to set.|
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p06473184299"><a name="p06473184299"></a><a name="p06473184299"></a>Mandatory</p> **Example**
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p66471618172920"><a name="p66471618172920"></a><a name="p66471618172920"></a>Description</p> ```
</th> var arrayBuffer = new ArrayBuffer(1024);
</tr> var thatSer = new xml.XmlSerializer(arrayBuffer);
</thead> thatSer.setDeclaration();
<tbody><tr id="row1564701813298"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p7647101892919"><a name="p7647101892919"></a><a name="p7647101892919"></a>prefix</p> thatSer.setNamespace("h", "http://www.w3.org/TR/html4/");
</td> thatSer.startElement("note");
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p064761822918"><a name="p064761822918"></a><a name="p064761822918"></a>string</p> thatSer.endElement();// = >'<?xml version="1.0" encoding="utf-8"?>\r\n<h:note xmlns:h="http://www.w3.org/TR/html4/"/>';
</td> ```
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p36471718162912"><a name="p36471718162912"></a><a name="p36471718162912"></a>Yes</p>
</td> ### setComment
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1564731811292"><a name="p1564731811292"></a><a name="p1564731811292"></a>Prefix of the element and its child elements.</p>
</td> setComment(text: string): void
</tr>
<tr id="row5285142452918"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p112861824192919"><a name="p112861824192919"></a><a name="p112861824192919"></a>namespace</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1728692413299"><a name="p1728692413299"></a><a name="p1728692413299"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p14994496295"><a name="p14994496295"></a><a name="p14994496295"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1428714245297"><a name="p1428714245297"></a><a name="p1428714245297"></a>Namespace to set.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var arrayBuffer = new ArrayBuffer(1024);
var thatSer = new xml.XmlSerializer(arrayBuffer);
thatSer.setDeclaration();
thatSer.setNamespace("h", "http://www.w3.org/TR/html4/");
thatSer.startElement("note");
thatSer.endElement();// = >'<?xml version="1.0" encoding="utf-8"?>\r\n<h:note xmlns:h="http://www.w3.org/TR/html4/"/>';
```
### setComment<a name="section1174418441186"></a>
setComment\(text: string\): void
Sets the comment. Sets the comment.
- Parameters **Parameters**
<a name="table59902223516"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row1699117253518"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p09911122354"><a name="p09911122354"></a><a name="p09911122354"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | text | string | Yes| Comment to set.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p209911128359"><a name="p209911128359"></a><a name="p209911128359"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p1899119203517"><a name="p1899119203517"></a><a name="p1899119203517"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p19991725355"><a name="p19991725355"></a><a name="p19991725355"></a>Description</p> var arrayBuffer = new ArrayBuffer(1024);
</th> var thatSer = new xml.XmlSerializer(arrayBuffer);
</tr> thatSer.startElement("note");
</thead> thatSer.setComment("Hi!");
<tbody><tr id="row59921026357"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p2099232153520"><a name="p2099232153520"></a><a name="p2099232153520"></a>text</p> thatSer.endElement(); // => '<note>\r\n <!--Hi!-->\r\n</note>';
</td> ```
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1992729353"><a name="p1992729353"></a><a name="p1992729353"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p9992182173517"><a name="p9992182173517"></a><a name="p9992182173517"></a>Yes</p> ### setCDATA
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1399210223514"><a name="p1399210223514"></a><a name="p1399210223514"></a>Comment to set.</p> setCDATA(text: string): void
</td>
</tr>
</tbody>
</table>
- Example
```
var arrayBuffer = new ArrayBuffer(1024);
var thatSer = new xml.XmlSerializer(arrayBuffer);
thatSer.startElement("note");
thatSer.setComment("Hi!");
thatSer.endElement(); // => '<note>\r\n <!--Hi!-->\r\n</note>';
```
### setCDATA<a name="section812915481985"></a>
setCDATA\(text: string\): void
Sets CDATA attributes. Sets CDATA attributes.
- Parameters **Parameters**
<a name="table374175311366"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row475175323615"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p1775553183620"><a name="p1775553183620"></a><a name="p1775553183620"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | text | string | Yes| CDATA attribute to set.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p2075053103617"><a name="p2075053103617"></a><a name="p2075053103617"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p67565310368"><a name="p67565310368"></a><a name="p67565310368"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1575153143612"><a name="p1575153143612"></a><a name="p1575153143612"></a>Description</p> var arrayBuffer = new ArrayBuffer(1028);
</th> var thatSer = new xml.XmlSerializer(arrayBuffer);
</tr> thatSer.setCDATA('root SYSTEM') // => '<![CDATA[root SYSTEM]]>';
</thead> ```
<tbody><tr id="row17525323615"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p47575316364"><a name="p47575316364"></a><a name="p47575316364"></a>text</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p2076105323611"><a name="p2076105323611"></a><a name="p2076105323611"></a>string</p> ### setText
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p1776653183610"><a name="p1776653183610"></a><a name="p1776653183610"></a>Yes</p> setText(text: string): void
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p276135313620"><a name="p276135313620"></a><a name="p276135313620"></a>CDATA attribute to set.</p> Sets **Text**.
</td>
</tr> **Parameters**
</tbody>
</table> | Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| text | string | Yes| Content of the **Text** to set.|
- Example
**Example**
```
var arrayBuffer = new ArrayBuffer(1028); ```
var thatSer = new xml.XmlSerializer(arrayBuffer); var arrayBuffer = new ArrayBuffer(1024);
thatSer.setCDATA('root SYSTEM') // => '<![CDATA[root SYSTEM]]>'; var thatSer = new xml.XmlSerializer(arrayBuffer);
``` thatSer.startElement("note");
thatSer.setAttributes("importance", "high");
thatSer.setText("Happy1");
### setText<a name="section265019491814"></a> thatSer.endElement(); // => '<note importance="high">Happy1</note>';
```
setText\(text: string\): void
Sets **Text**. ### setDocType
- Parameters setDocType(text: string): void
<a name="table136227583373"></a> Sets **DocType**.
<table><thead align="left"><tr id="row1662355863713"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p86235584376"><a name="p86235584376"></a><a name="p86235584376"></a>Name</p>
</th> **Parameters**
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p106231958103718"><a name="p106231958103718"></a><a name="p106231958103718"></a>Type</p>
</th> | Name| Type| Mandatory| Description|
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p3624458193719"><a name="p3624458193719"></a><a name="p3624458193719"></a>Mandatory</p> | -------- | -------- | -------- | -------- |
</th> | text | string | Yes| Content of **DocType** to set.|
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1762425863715"><a name="p1762425863715"></a><a name="p1762425863715"></a>Description</p>
</th> **Example**
</tr>
</thead> ```
<tbody><tr id="row762405815376"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p062475843712"><a name="p062475843712"></a><a name="p062475843712"></a>text</p> var arrayBuffer = new ArrayBuffer(1024);
</td> var thatSer = new xml.XmlSerializer(arrayBuffer);
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1362412588379"><a name="p1362412588379"></a><a name="p1362412588379"></a>string</p> thatSer.setDocType('root SYSTEM'); // => '<!DOCTYPE root SYSTEM>';
</td> ```
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p1062435814373"><a name="p1062435814373"></a><a name="p1062435814373"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p17625105833713"><a name="p17625105833713"></a><a name="p17625105833713"></a>Content of the <strong id="b47250195582"><a name="b47250195582"></a><a name="b47250195582"></a>Text</strong> to set.</p> ## XmlPullParser
</td>
</tr>
</tbody> ### XmlPullParser
</table>
constructor(buffer: ArrayBuffer | DataView, encoding?: string)
- Example Creates and returns an **XmlPullParser** object. The **XmlPullParser** object passes two parameters. The first parameter is the memory of the **ArrayBuffer** or **DataView** type, and the second parameter is the file format (UTF-8 by default).
``` **Parameters**
var arrayBuffer = new ArrayBuffer(1024);
var thatSer = new xml.XmlSerializer(arrayBuffer); | Name| Type| Mandatory| Description|
thatSer.startElement("note"); | -------- | -------- | -------- | -------- |
thatSer.setAttributes("importance", "high"); | buffer | ArrayBuffer&nbsp;\|&nbsp;DataView | Yes| **ArrayBuffer** or **DataView** that contains XML text information.|
thatSer.setText("Happy1"); | encoding | string | No| Encoding format. Only UTF-8 is supported.|
thatSer.endElement(); // => '<note importance="high">Happy1</note>';
``` **Example**
```
### setDocType<a name="section104216510819"></a> var strXml =
'<?xml version="1.0" encoding="utf-8"?>' +
setDocType\(text: string\): void '<note importance="high" logged="true">' +
' <title>Happy</title>' +
Sets **DocType**. ' <todo>Work</todo>' +
' <todo>Play</todo>' +
- Parameters '</note>';
var arrayBuffer = new ArrayBuffer(strXml.length*2);
<a name="table144314794016"></a> var bufView = new Uint8Array(arrayBuffer);
<table><thead align="left"><tr id="row1443167184014"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p174437734018"><a name="p174437734018"></a><a name="p174437734018"></a>Name</p> var strLen = strXml.length;
</th> for (var i = 0; i < strLen; ++i) {
<th class="cellrowborder" valign="top" width="14.719999999999999%" id="mcps1.1.5.1.2"><p id="p2443177184017"><a name="p2443177184017"></a><a name="p2443177184017"></a>Type</p> bufView[i] = strXml.charCodeAt(i);// Set the ArrayBuffer mode.
</th> }
<th class="cellrowborder" valign="top" width="9.17%" id="mcps1.1.5.1.3"><p id="p1544467124019"><a name="p1544467124019"></a><a name="p1544467124019"></a>Mandatory</p> var that = new xml.XmlPullParser(arrayBuffer);
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p1444117134017"><a name="p1444117134017"></a><a name="p1444117134017"></a>Description</p>
</th>
</tr> ### parse
</thead>
<tbody><tr id="row2444975406"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p544497124013"><a name="p544497124013"></a><a name="p544497124013"></a>text</p> parse(option: ParseOptions): void
</td>
<td class="cellrowborder" valign="top" width="14.719999999999999%" headers="mcps1.1.5.1.2 "><p id="p1644411764014"><a name="p1644411764014"></a><a name="p1644411764014"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.17%" headers="mcps1.1.5.1.3 "><p id="p12444117204011"><a name="p12444117204011"></a><a name="p12444117204011"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1944520774014"><a name="p1944520774014"></a><a name="p1944520774014"></a>Content of <strong id="b18701135915"><a name="b18701135915"></a><a name="b18701135915"></a>DocType</strong> to set.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var arrayBuffer = new ArrayBuffer(1024);
var thatSer = new xml.XmlSerializer(arrayBuffer);
thatSer.setDocType('root SYSTEM'); // => '<!DOCTYPE root SYSTEM>';
```
## XmlPullParser<a name="section13701854986"></a>
### XmlPullParser<a name="section837014541082"></a>
constructor\(buffer: ArrayBuffer | DataView, encoding?: string\)
Creates and returns an **XmlPullParser** object. The **XmlPullParser** object passes two parameters. The first parameter is the memory of the **ArrayBuffer** or **DataView** type, and the second parameter is the file format \(UTF-8 by default\).
- Parameters
<a name="table288473334210"></a>
<table><thead align="left"><tr id="row388512334421"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p188523334214"><a name="p188523334214"></a><a name="p188523334214"></a>Name</p>
</th>
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p108851333154211"><a name="p108851333154211"></a><a name="p108851333154211"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p78851433124211"><a name="p78851433124211"></a><a name="p78851433124211"></a>Mandatory</p>
</th>
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p7885183304220"><a name="p7885183304220"></a><a name="p7885183304220"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row388515334428"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p18856335429"><a name="p18856335429"></a><a name="p18856335429"></a>buffer</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p11886173344210"><a name="p11886173344210"></a><a name="p11886173344210"></a>ArrayBuffer | DataView</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p688613334215"><a name="p688613334215"></a><a name="p688613334215"></a>Yes</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p1937471913416"><a name="p1937471913416"></a><a name="p1937471913416"></a><strong id="b245371713210"><a name="b245371713210"></a><a name="b245371713210"></a>ArrayBuffer</strong> or <strong id="b178682213217"><a name="b178682213217"></a><a name="b178682213217"></a>DataView</strong> that contains XML text information.</p>
</td>
</tr>
<tr id="row1991038194214"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p12101538134210"><a name="p12101538134210"></a><a name="p12101538134210"></a>encoding</p>
</td>
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p1761135812426"><a name="p1761135812426"></a><a name="p1761135812426"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p154915214436"><a name="p154915214436"></a><a name="p154915214436"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p10101138164219"><a name="p10101138164219"></a><a name="p10101138164219"></a>Encoding format. Only UTF-8 is supported.</p>
</td>
</tr>
</tbody>
</table>
- Example
```
var strXml =
'<?xml version="1.0" encoding="utf-8"?>' +
'<note importance="high" logged="true">' +
' <title>Happy</title>' +
' <todo>Work</todo>' +
' <todo>Play</todo>' +
'</note>';
var arrayBuffer = new ArrayBuffer(strXml.length*2);
var bufView = new Uint8Array(arrayBuffer);
var strLen = strXml.length;
for (var i = 0; i < strLen; ++i) {
bufView[i] = strXml.charCodeAt(i);// Set the ArrayBuffer mode.
}
var that = new xml.XmlPullParser(arrayBuffer);
```
### parse<a name="section12316561182"></a>
parse\(option: ParseOptions\): void
Parses XML information. Parses XML information.
- Parameters **Parameters**
<a name="table12343577453"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row03443744517"><th class="cellrowborder" valign="top" width="14.82%" id="mcps1.1.5.1.1"><p id="p434416704519"><a name="p434416704519"></a><a name="p434416704519"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | option | [ParseOptions](#parseoptions) | Yes| Options for controlling and obtaining the parsed information.|
<th class="cellrowborder" valign="top" width="14.729999999999999%" id="mcps1.1.5.1.2"><p id="p634418734515"><a name="p634418734515"></a><a name="p634418734515"></a>Type</p>
</th> **Example**
<th class="cellrowborder" valign="top" width="9.16%" id="mcps1.1.5.1.3"><p id="p43441777454"><a name="p43441777454"></a><a name="p43441777454"></a>Mandatory</p>
</th> ```
<th class="cellrowborder" valign="top" width="61.29%" id="mcps1.1.5.1.4"><p id="p20344571453"><a name="p20344571453"></a><a name="p20344571453"></a>Description</p> var strXml =
</th> '<?xml version="1.0" encoding="utf-8"?>' +
</tr> '<note importance="high" logged="true">' +
</thead> ' <title>Happy</title>' +
<tbody><tr id="row634412719455"><td class="cellrowborder" valign="top" width="14.82%" headers="mcps1.1.5.1.1 "><p id="p16344117154513"><a name="p16344117154513"></a><a name="p16344117154513"></a>option</p> ' <todo>Work</todo>' +
</td> ' <todo>Play</todo>' +
<td class="cellrowborder" valign="top" width="14.729999999999999%" headers="mcps1.1.5.1.2 "><p id="p834513718453"><a name="p834513718453"></a><a name="p834513718453"></a><a href="#section983614244916">ParseOptions</a></p> '</note>';
</td> var arrayBuffer = new ArrayBuffer(strXml.length*2);
<td class="cellrowborder" valign="top" width="9.16%" headers="mcps1.1.5.1.3 "><p id="p134518714457"><a name="p134518714457"></a><a name="p134518714457"></a>Yes</p> var bufView = new Uint8Array(arrayBuffer);
</td> var strLen = strXml.length;
<td class="cellrowborder" valign="top" width="61.29%" headers="mcps1.1.5.1.4 "><p id="p83458744511"><a name="p83458744511"></a><a name="p83458744511"></a>Options for controlling and obtaining the parsed information.</p> for (var i = 0; i < strLen; ++i) {
</td> bufView[i] = strXml.charCodeAt(i);
</tr> }
</tbody> var that = new xml.XmlPullParser(arrayBuffer);
</table> var arrTag = {};
arrTag[0] = '132';
var i = 1;
- Example function func(key, value){
arrTag[i] = 'key:'+key+' value:'+ value.getDepth();
``` i++;
var strXml = return true;
'<?xml version="1.0" encoding="utf-8"?>' + }
'<note importance="high" logged="true">' + var options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func}
' <title>Happy</title>' + that.parse(options);
' <todo>Work</todo>' + ```
' <todo>Play</todo>' +
'</note>';
var arrayBuffer = new ArrayBuffer(strXml.length*2); ## ParseOptions
var bufView = new Uint8Array(arrayBuffer);
var strLen = strXml.length;
for (var i = 0; i < strLen; ++i) {
bufView[i] = strXml.charCodeAt(i);
}
var that = new xml.XmlPullParser(arrayBuffer);
var arrTag = {};
arrTag[0] = '132';
var i = 1;
function func(key, value){
arrTag[i] = 'key:'+key+' value:'+ value.getDepth();
i++;
return true;
}
var options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func}
that.parse(options);
```
## ParseOptions<a name="section983614244916"></a>
Defines the XML parsing options. Defines the XML parsing options.
<a name="table160910591211"></a> | Name| Type| Mandatory| Description|
<table><thead align="left"><tr id="row176096590111"><th class="cellrowborder" valign="top" width="21.990000000000002%" id="mcps1.1.5.1.1"><p id="p176091259315"><a name="p176091259315"></a><a name="p176091259315"></a>Name</p> | -------- | -------- | -------- | -------- |
</th> | supportDoctype | boolean | No| Whether to ignore **Doctype**. The default value is **false**.|
<th class="cellrowborder" valign="top" width="36.309999999999995%" id="mcps1.1.5.1.2"><p id="p260914591118"><a name="p260914591118"></a><a name="p260914591118"></a>Type</p> | ignoreNameSpace | boolean | No| Whether to ignore **Namespace**. The default value is **false**.|
</th> | tagValueCallbackFunction | (name:&nbsp;string,&nbsp;value:&nbsp;string)=&gt;&nbsp;boolean | No| Callback used to return **tagValue**.|
<th class="cellrowborder" valign="top" width="5.52%" id="mcps1.1.5.1.3"><p id="p66092593113"><a name="p66092593113"></a><a name="p66092593113"></a>Mandatory</p> | attributeValueCallbackFunction | (name:&nbsp;string,&nbsp;value:&nbsp;string)=&gt;&nbsp;boolean | No| Callback used to return **attributeValue**.|
</th> | tokenValueCallbackFunction | (eventType:&nbsp;[EventType](#eventtype),&nbsp;value:&nbsp;[ParseInfo](#parseinfo))=&gt;&nbsp;boolean | No| Callback used to return **tokenValue**.|
<th class="cellrowborder" valign="top" width="36.18%" id="mcps1.1.5.1.4"><p id="p160910591312"><a name="p160910591312"></a><a name="p160910591312"></a>Description</p>
</th>
</tr> ## ParseInfo
</thead>
<tbody><tr id="row1860911593112"><td class="cellrowborder" valign="top" width="21.990000000000002%" headers="mcps1.1.5.1.1 "><p id="p46091159419"><a name="p46091159419"></a><a name="p46091159419"></a>supportDoctype</p>
</td>
<td class="cellrowborder" valign="top" width="36.309999999999995%" headers="mcps1.1.5.1.2 "><p id="p136094597118"><a name="p136094597118"></a><a name="p136094597118"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="5.52%" headers="mcps1.1.5.1.3 "><p id="p660918591814"><a name="p660918591814"></a><a name="p660918591814"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="36.18%" headers="mcps1.1.5.1.4 "><p id="p15609259215"><a name="p15609259215"></a><a name="p15609259215"></a>Whether to ignore <strong id="b1456884321714"><a name="b1456884321714"></a><a name="b1456884321714"></a>Doctype</strong>. The default value is <strong id="b1626514489171"><a name="b1626514489171"></a><a name="b1626514489171"></a>false</strong>.</p>
</td>
</tr>
<tr id="row7610175913118"><td class="cellrowborder" valign="top" width="21.990000000000002%" headers="mcps1.1.5.1.1 "><p id="p46108597120"><a name="p46108597120"></a><a name="p46108597120"></a>ignoreNameSpace</p>
</td>
<td class="cellrowborder" valign="top" width="36.309999999999995%" headers="mcps1.1.5.1.2 "><p id="p1661095916114"><a name="p1661095916114"></a><a name="p1661095916114"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="5.52%" headers="mcps1.1.5.1.3 "><p id="p13610559117"><a name="p13610559117"></a><a name="p13610559117"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="36.18%" headers="mcps1.1.5.1.4 "><p id="p1261012591114"><a name="p1261012591114"></a><a name="p1261012591114"></a>Whether to ignore <strong id="b649517181815"><a name="b649517181815"></a><a name="b649517181815"></a>Namespace</strong>. The default value is <strong id="b154747521819"><a name="b154747521819"></a><a name="b154747521819"></a>false</strong>.</p>
</td>
</tr>
<tr id="row16101595112"><td class="cellrowborder" valign="top" width="21.990000000000002%" headers="mcps1.1.5.1.1 "><p id="p561013591916"><a name="p561013591916"></a><a name="p561013591916"></a>tagValueCallbackFunction</p>
</td>
<td class="cellrowborder" valign="top" width="36.309999999999995%" headers="mcps1.1.5.1.2 "><p id="p1861035916118"><a name="p1861035916118"></a><a name="p1861035916118"></a>(name: string, value: string)=&gt; boolean</p>
</td>
<td class="cellrowborder" valign="top" width="5.52%" headers="mcps1.1.5.1.3 "><p id="p1961025917117"><a name="p1961025917117"></a><a name="p1961025917117"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="36.18%" headers="mcps1.1.5.1.4 "><p id="p1561095911110"><a name="p1561095911110"></a><a name="p1561095911110"></a>Callback used to return <strong id="b16819155133814"><a name="b16819155133814"></a><a name="b16819155133814"></a>tagValue</strong>.</p>
</td>
</tr>
<tr id="row14610859616"><td class="cellrowborder" valign="top" width="21.990000000000002%" headers="mcps1.1.5.1.1 "><p id="p76101359214"><a name="p76101359214"></a><a name="p76101359214"></a>attributeValueCallbackFunction</p>
</td>
<td class="cellrowborder" valign="top" width="36.309999999999995%" headers="mcps1.1.5.1.2 "><p id="p2061014591118"><a name="p2061014591118"></a><a name="p2061014591118"></a>(name: string, value: string)=&gt; boolean</p>
</td>
<td class="cellrowborder" valign="top" width="5.52%" headers="mcps1.1.5.1.3 "><p id="p1161012591018"><a name="p1161012591018"></a><a name="p1161012591018"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="36.18%" headers="mcps1.1.5.1.4 "><p id="p1361010593112"><a name="p1361010593112"></a><a name="p1361010593112"></a>Callback used to return <strong id="b126354223386"><a name="b126354223386"></a><a name="b126354223386"></a>attributeValue</strong>.</p>
</td>
</tr>
<tr id="row5610185911117"><td class="cellrowborder" valign="top" width="21.990000000000002%" headers="mcps1.1.5.1.1 "><p id="p56101359912"><a name="p56101359912"></a><a name="p56101359912"></a>tokenValueCallbackFunction</p>
</td>
<td class="cellrowborder" valign="top" width="36.309999999999995%" headers="mcps1.1.5.1.2 "><p id="p1761011596112"><a name="p1761011596112"></a><a name="p1761011596112"></a>(eventType: <a href="#section8364114132911">EventType</a>, value: <a href="#section436931815497">ParseInfo</a>)=&gt; boolean</p>
</td>
<td class="cellrowborder" valign="top" width="5.52%" headers="mcps1.1.5.1.3 "><p id="p46104591014"><a name="p46104591014"></a><a name="p46104591014"></a>No</p>
</td>
<td class="cellrowborder" valign="top" width="36.18%" headers="mcps1.1.5.1.4 "><p id="p156118592117"><a name="p156118592117"></a><a name="p156118592117"></a>Callback used to return <strong id="b1063617437387"><a name="b1063617437387"></a><a name="b1063617437387"></a>tokenValue</strong>.</p>
</td>
</tr>
</tbody>
</table>
## ParseInfo<a name="section436931815497"></a>
Provides methods to manage the parsed XML information. Provides methods to manage the parsed XML information.
### getColumnNumber<a name="section7268152661315"></a>
getColumnNumber\(\): number ### getColumnNumber
getColumnNumber(): number
Obtains the column line number, which starts from 1. Obtains the column line number, which starts from 1.
- Return values **Return value**
<a name="table8583171852312"></a> | Type| Description|
<table><thead align="left"><tr id="row1583118122320"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p95841118182314"><a name="p95841118182314"></a><a name="p95841118182314"></a>Type</p> | -------- | -------- |
</th> | number | Column number obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p12584111819235"><a name="p12584111819235"></a><a name="p12584111819235"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1058411189235"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p165841118182318"><a name="p165841118182318"></a><a name="p165841118182318"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p185841618162312"><a name="p185841618162312"></a><a name="p185841618162312"></a>Column number obtained.</p>
</td>
</tr>
</tbody>
</table>
### getDepth<a name="section15616143563517"></a> ### getDepth
getDepth\(\): number getDepth(): number
Obtains the depth of this element. Obtains the depth of this element.
- Return values **Return value**
<a name="table15525115213712"></a> | Type| Description|
<table><thead align="left"><tr id="row125251952133718"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p752514520377"><a name="p752514520377"></a><a name="p752514520377"></a>Type</p> | -------- | -------- |
</th> | number | Depth obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p145251552143713"><a name="p145251552143713"></a><a name="p145251552143713"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1152518527376"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p15991162995116"><a name="p15991162995116"></a><a name="p15991162995116"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p185251152153715"><a name="p185251152153715"></a><a name="p185251152153715"></a>Depth obtained.</p>
</td>
</tr>
</tbody>
</table>
### getLineNumber<a name="section8712911183819"></a> ### getLineNumber
getLineNumber\(\): number getLineNumber(): number
Obtains the current line number, starting from 1. Obtains the current line number, starting from 1.
- Return values **Return value**
<a name="table485342915385"></a> | Type| Description|
<table><thead align="left"><tr id="row885302983818"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p1085313295388"><a name="p1085313295388"></a><a name="p1085313295388"></a>Type</p> | -------- | -------- |
</th> | number | Line number obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p185319296386"><a name="p185319296386"></a><a name="p185319296386"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row4853102919386"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p108541629123819"><a name="p108541629123819"></a><a name="p108541629123819"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p12854229113810"><a name="p12854229113810"></a><a name="p12854229113810"></a>Line number obtained.</p>
</td>
</tr>
</tbody>
</table>
### getName<a name="section183355915386"></a> ### getName
getName\(\): string getName(): string
Obtains the name of this element. Obtains the name of this element.
- Return values **Return value**
<a name="table1083372573916"></a> | Type| Description|
<table><thead align="left"><tr id="row68331025193910"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p2833225153912"><a name="p2833225153912"></a><a name="p2833225153912"></a>Type</p> | -------- | -------- |
</th> | string | Element name obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p183362519395"><a name="p183362519395"></a><a name="p183362519395"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row2833172523915"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p2834132533918"><a name="p2834132533918"></a><a name="p2834132533918"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p083452543915"><a name="p083452543915"></a><a name="p083452543915"></a>Element name obtained.</p>
</td>
</tr>
</tbody>
</table>
### getNamespace<a name="section5884344103915"></a> ### getNamespace
getNamespace\(\): string getNamespace(): string
Obtains the namespace of this element. Obtains the namespace of this element.
- Return values **Return value**
<a name="table555314417409"></a> | Type| Description|
<table><thead align="left"><tr id="row145533420401"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p15553046403"><a name="p15553046403"></a><a name="p15553046403"></a>Type</p> | -------- | -------- |
</th> | string | Namespace obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p1255314454015"><a name="p1255314454015"></a><a name="p1255314454015"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1555313424017"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p175531042409"><a name="p175531042409"></a><a name="p175531042409"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p2055414416400"><a name="p2055414416400"></a><a name="p2055414416400"></a>Namespace obtained.</p>
</td>
</tr>
</tbody>
</table>
### getPrefix<a name="section6425182414016"></a> ### getPrefix
getPrefix\(\): string getPrefix(): string
Obtains the prefix of this element. Obtains the prefix of this element.
- Return values **Return value**
<a name="table953805664113"></a> | Type| Description|
<table><thead align="left"><tr id="row115381356174119"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p653885613412"><a name="p653885613412"></a><a name="p653885613412"></a>Type</p> | -------- | -------- |
</th> | string | Element prefix obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p19538105624118"><a name="p19538105624118"></a><a name="p19538105624118"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row125385562414"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p1538175654111"><a name="p1538175654111"></a><a name="p1538175654111"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p1953965664113"><a name="p1953965664113"></a><a name="p1953965664113"></a>Element prefix obtained.</p>
</td>
</tr>
</tbody>
</table>
### getText<a name="section17411131414518"></a> ### getText
getText\(\): string getText(): string
Obtains the text of the current event. Obtains the text of the current event.
- Return values **Return value**
<a name="table1970175444514"></a> | Type| Description|
<table><thead align="left"><tr id="row99701054154517"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p697075417456"><a name="p697075417456"></a><a name="p697075417456"></a>Type</p> | -------- | -------- |
</th> | string | Text content obtained.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p497017543454"><a name="p497017543454"></a><a name="p497017543454"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row097010542454"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p18970454174511"><a name="p18970454174511"></a><a name="p18970454174511"></a>string</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p6970954184516"><a name="p6970954184516"></a><a name="p6970954184516"></a>Text content obtained.</p>
</td>
</tr>
</tbody>
</table>
### isEmptyElementTag<a name="section1817544617"></a> ### isEmptyElementTag
isEmptyElementTag\(\): boolean isEmptyElementTag(): boolean
Checks whether the current element is empty. Checks whether the current element is empty.
- Return values **Return value**
<a name="table19505839154618"></a> | Type| Description|
<table><thead align="left"><tr id="row3505143984617"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p15505163954616"><a name="p15505163954616"></a><a name="p15505163954616"></a>Type</p> | -------- | -------- |
</th> | boolean | Returns **true** if the element is empty; returns **false** otherwise.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p8505113934610"><a name="p8505113934610"></a><a name="p8505113934610"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row1505139144620"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p1350583916465"><a name="p1350583916465"></a><a name="p1350583916465"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p11506139134613"><a name="p11506139134613"></a><a name="p11506139134613"></a>Returns <strong id="b695884461016"><a name="b695884461016"></a><a name="b695884461016"></a>true</strong> if the element is empty; returns <strong id="b1774315414113"><a name="b1774315414113"></a><a name="b1774315414113"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
### isWhitespace<a name="section91661610476"></a> ### isWhitespace
isWhitespace\(\): boolean isWhitespace(): boolean
Checks whether the current text event contains only whitespace characters. Checks whether the current text event contains only whitespace characters.
- Return values **Return value**
<a name="table6645101004814"></a> | Type| Description|
<table><thead align="left"><tr id="row7645101014811"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p8645510154813"><a name="p8645510154813"></a><a name="p8645510154813"></a>Type</p> | -------- | -------- |
</th> | boolean | Returns **true** if the text event contains only whitespace characters; returns **false** otherwise.|
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p146451510184813"><a name="p146451510184813"></a><a name="p146451510184813"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row6645131019485"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p11645161016486"><a name="p11645161016486"></a><a name="p11645161016486"></a>boolean</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p20645910194820"><a name="p20645910194820"></a><a name="p20645910194820"></a>Returns <strong id="b2851155413019"><a name="b2851155413019"></a><a name="b2851155413019"></a>true</strong> if the text event contains only whitespace characters; returns <strong id="b16337271114"><a name="b16337271114"></a><a name="b16337271114"></a>false</strong> otherwise.</p>
</td>
</tr>
</tbody>
</table>
### getAttributeCount<a name="section736553519482"></a> ### getAttributeCount
getAttributeCount\(\): number getAttributeCount(): number
Obtains the number of attributes for the current start tag. Obtains the number of attributes for the current start tag.
- Return values **Return value**
| Type| Description|
| -------- | -------- |
| number | Number of attributes obtained.|
<a name="table18597165219484"></a>
<table><thead align="left"><tr id="row859713527484"><th class="cellrowborder" valign="top" width="29.880000000000003%" id="mcps1.1.3.1.1"><p id="p14597125254813"><a name="p14597125254813"></a><a name="p14597125254813"></a>Type</p>
</th>
<th class="cellrowborder" valign="top" width="70.12%" id="mcps1.1.3.1.2"><p id="p1459711528485"><a name="p1459711528485"></a><a name="p1459711528485"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row2597135214813"><td class="cellrowborder" valign="top" width="29.880000000000003%" headers="mcps1.1.3.1.1 "><p id="p1059785244818"><a name="p1059785244818"></a><a name="p1059785244818"></a>number</p>
</td>
<td class="cellrowborder" valign="top" width="70.12%" headers="mcps1.1.3.1.2 "><p id="p45983522483"><a name="p45983522483"></a><a name="p45983522483"></a>Number of attributes obtained.</p>
</td>
</tr>
</tbody>
</table>
## EventType
## EventType<a name="section8364114132911"></a>
Enumerates the events. Enumerates the events.
<a name="table71051154194714"></a> | Name| Value| Description|
<table><thead align="left"><tr id="row9105105494718"><th class="cellrowborder" valign="top" width="27.47%" id="mcps1.1.4.1.1"><p id="p510575413474"><a name="p510575413474"></a><a name="p510575413474"></a>Name</p> | -------- | -------- | -------- |
</th> | START_DOCUMENT | 0 | Indicates a start document event.|
<th class="cellrowborder" valign="top" width="13.719999999999999%" id="mcps1.1.4.1.2"><p id="p151052542470"><a name="p151052542470"></a><a name="p151052542470"></a>Value</p> | END_DOCUMENT | 1 | Indicates an end document event.|
</th> | START_TAG | 2 | Indicates a start tag event.|
<th class="cellrowborder" valign="top" width="58.809999999999995%" id="mcps1.1.4.1.3"><p id="p161061541473"><a name="p161061541473"></a><a name="p161061541473"></a>Description</p> | END_TAG | 3 | Indicates an end tag event.|
</th> | TEXT | 4 | Indicates a text event.|
</tr> | CDSECT | 5 | Indicates a CDATA section event.|
</thead> | COMMENT | 6 | Indicates an XML comment event.|
<tbody><tr id="row13106254164718"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p717845685110"><a name="p717845685110"></a><a name="p717845685110"></a>START_DOCUMENT</p> | DOCDECL | 7 | Indicates an XML document type declaration event.|
</td> | INSTRUCTION | 8 | Indicates an XML processing instruction event.|
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p914153211523"><a name="p914153211523"></a><a name="p914153211523"></a>0</p> | ENTITY_REFERENCE | 9 | Indicates an entity reference event.|
</td> | WHITESPACE | 10 | Indicates a whitespace character event.|
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p810715420474"><a name="p810715420474"></a><a name="p810715420474"></a>Indicates a start document event.</p>
</td>
</tr>
<tr id="row610785417479"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p117818566513"><a name="p117818566513"></a><a name="p117818566513"></a>END_DOCUMENT</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p15141143210523"><a name="p15141143210523"></a><a name="p15141143210523"></a>1</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p820172175515"><a name="p820172175515"></a><a name="p820172175515"></a>Indicates an end document event.</p>
</td>
</tr>
<tr id="row12107145411474"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p13178165612512"><a name="p13178165612512"></a><a name="p13178165612512"></a>START_TAG</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p414133213520"><a name="p414133213520"></a><a name="p414133213520"></a>2</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p27463438553"><a name="p27463438553"></a><a name="p27463438553"></a>Indicates a start tag event.</p>
</td>
</tr>
<tr id="row1110719544472"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p917885619516"><a name="p917885619516"></a><a name="p917885619516"></a>END_TAG</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p7141113215529"><a name="p7141113215529"></a><a name="p7141113215529"></a>3</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p1279231415617"><a name="p1279231415617"></a><a name="p1279231415617"></a>Indicates an end tag event.</p>
</td>
</tr>
<tr id="row11081454164717"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p12178185612518"><a name="p12178185612518"></a><a name="p12178185612518"></a>TEXT</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p1614116324529"><a name="p1614116324529"></a><a name="p1614116324529"></a>4</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p135559523569"><a name="p135559523569"></a><a name="p135559523569"></a>Indicates a text event.</p>
</td>
</tr>
<tr id="row710825415478"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p11781056175115"><a name="p11781056175115"></a><a name="p11781056175115"></a>CDSECT</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p1141113225212"><a name="p1141113225212"></a><a name="p1141113225212"></a>5</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p28815319573"><a name="p28815319573"></a><a name="p28815319573"></a>Indicates a CDATA section event.</p>
</td>
</tr>
<tr id="row16108115414713"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p4178135613518"><a name="p4178135613518"></a><a name="p4178135613518"></a>COMMENT</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p9141832145218"><a name="p9141832145218"></a><a name="p9141832145218"></a>6</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p11109135404716"><a name="p11109135404716"></a><a name="p11109135404716"></a>Indicates an XML comment event.</p>
</td>
</tr>
<tr id="row1710914548477"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p61796563515"><a name="p61796563515"></a><a name="p61796563515"></a>DOCDECL</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p8141163235220"><a name="p8141163235220"></a><a name="p8141163235220"></a>7</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p5109115444715"><a name="p5109115444715"></a><a name="p5109115444715"></a>Indicates an XML document type declaration event.</p>
</td>
</tr>
<tr id="row1710965434712"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p171791056135119"><a name="p171791056135119"></a><a name="p171791056135119"></a>INSTRUCTION</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p141428328524"><a name="p141428328524"></a><a name="p141428328524"></a>8</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p1685554515718"><a name="p1685554515718"></a><a name="p1685554515718"></a>Indicates an XML processing instruction event.</p>
</td>
</tr>
<tr id="row1511012545475"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p10179456165111"><a name="p10179456165111"></a><a name="p10179456165111"></a>ENTITY_REFERENCE</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p12142183265212"><a name="p12142183265212"></a><a name="p12142183265212"></a>9</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p91101054174716"><a name="p91101054174716"></a><a name="p91101054174716"></a>Indicates an entity reference event.</p>
</td>
</tr>
<tr id="row20989135175118"><td class="cellrowborder" valign="top" width="27.47%" headers="mcps1.1.4.1.1 "><p id="p1417955615511"><a name="p1417955615511"></a><a name="p1417955615511"></a>WHITESPACE</p>
</td>
<td class="cellrowborder" valign="top" width="13.719999999999999%" headers="mcps1.1.4.1.2 "><p id="p191421832195217"><a name="p191421832195217"></a><a name="p191421832195217"></a>10</p>
</td>
<td class="cellrowborder" valign="top" width="58.809999999999995%" headers="mcps1.1.4.1.3 "><p id="p19990155145115"><a name="p19990155145115"></a><a name="p19990155145115"></a>Indicates a whitespace character event.</p>
</td>
</tr>
</tbody>
</table>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册