• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ets_utils组件
2ets_utils组件共提供四个子模块,分别是:js_api_module、js_util_module、js_sys_module和js_worker_module,以下内容将详细介绍各个子模块的简介、目录、说明和涉及仓等相关内容。
3
4# 子模块
5## 1. js_api_module子模块
6### 1.1. 简介
7
8URL接口用于解析,构造,规范化和编码 URLs。 URL的构造函数创建新的URL对象。 以便对URL的已解析组成部分或对URL进行更改。URLSearchParams 接口定义了一些实用的方法来处理 URL 的查询字符串。
9
10URI表示统一资源标识符引用。
11
12xml表示指可扩展标记语言。
13
14XmlSerializer接口用于生成一个xml文件。 XmlSerializer的构造函数创建新的XmlSerializer对象,调用XmlSerializer对象的方法生成一个xml文件。XmlPullParser 接口用于解析已有的xml文件,XmlPullParser的构造函数创建新的XmlPullParser对象,调用XmlPullParser对象的方法解析xml。
15
16### 1.2. 目录
17
18```
19commonlibrary/ets_utils/js_api_module/
20├── Class:URL                                                                     # URL类
21│   ├── new URL(input[, base])                                                    # 创建URL对象
22│   ├── hash                                                                      # hash属性
23│   ├── host                                                                      # host属性
24│   ├── hostname                                                                  # hostname属性
25│   ├── href                                                                      # href属性
26│   ├── origin                                                                    # origin属性
27│   ├── password                                                                  # password属性
28│   ├── pathname                                                                  # pathname属性
29│   ├── port                                                                      # port属性
30│   ├── protocol                                                                  # protocol属性
31│   ├── search                                                                    # search属性
32│   ├── searchParams                                                              # searchParams属性
33│   ├── username                                                                  # username属性
34│   ├── toString()                                                                # toString方法
35│   └── toJSON()                                                                  # toJSON方法
36├── Class: URLSearchParams                                                        # URLSearchParams类
37│   ├── new URLSearchParams()                                                     # 创建URLSearchParams对象
38│   ├── new URLSearchParams(string)                                               # 创建URLSearchParams对象
39│   ├── new URLSearchParams(obj)                                                  # 创建URLSearchParams对象
40│   ├── new URLSearchParams(iterable)                                             # 创建URLSearchParams对象
41│   ├── append(name, value)                                                       # append方法
42│   ├── delete(name)                                                              # delete方法
43│   ├── entries()                                                                 # entries方法
44│   ├── forEach(fn[, thisArg])                                                    # forEach方法
45│   ├── get(name)                                                                 # get方法
46│   ├── getAll(name)                                                              # getAll方法
47│   ├── has(name)                                                                 # has方法
48│   ├── keys()                                                                    # keys方法
49│   ├── set(name, value)                                                          # set方法
50│   ├── sort()                                                                    # sort方法
51│   ├── toString()                                                                # toString方法
52│   ├── values()                                                                  # values方法
53│   └── urlSearchParams[Symbol.iterator]()                                        # 创建URLSearchParams对象
54├── Class:URI                                                                     # URI类
55│   ├── URI(str: string)                                                          # 创建URI对象
56│   ├── scheme                                                                    # scheme属性
57│   ├── authority                                                                 # authority属性
58│   ├── ssp                                                                       # ssp属性
59│   ├── userinfo                                                                  # userinfo属性
60│   ├── host                                                                      # host属性
61│   ├── port                                                                      # port属性
62│   ├── query                                                                     # query属性
63│   ├── fragment                                                                  # fragment属性
64│   ├── path                                                                      # path属性
65│   ├── equals(ob: Object)                                                        # equals方法
66│   ├── normalize()                                                               # normalize方法
67│   ├── checkIsAbsolute()                                                         # checkIsAbsolute方法
68│   ├── normalize()                                                               # normalize方法
69│   └── toString()                                                                # toString方法
70├── Class:ConvertXml                                                              # ConvertXml类
71│   ├── ConvertXml()                                                              # 创建ConvertXml类对象
72│   └── convert(xml: string, options: Object)                                     # convert方法
73├── Class:XmlSerializer                                                           # XmlSerializer类
74│   ├── new XmlSerializer(buffer: ArrayBuffer | DataView, encoding?: string)      # 创建XmlSerializer类对象
75│   ├── setAttributes(name: string, value: string)                                # 设置Attributes方法
76│   ├── addEmptyElement(name: string)                                             # 添加一个空元素方法
77│   ├── setDeclaration()                                                          # 设置Declaration方法
78│   ├── startElement(name: string)                                                # 设置开始元素方法
79│   ├── endElement()                                                              # 设置结束元素方法
80│   ├── setNamespace(prefix: string, namespace: string)                           # 设置命名空间方法
81│   ├── setCommnet(text: string)                                                  # 设置Commnet方法
82│   ├── setCData(text: string)                                                    # 设置CData方法
83│   ├── setText(text: string)                                                     # 设置Text方法
84│   └── setDocType(text: string)                                                  # 设置DocType方法
85└── Class: XmlPullParser                                                          # XmlPullParser类
86    ├── new (buffer: ArrayBuffer | DataView, encoding?: string)                   # 创建XmlPullParser对象
87    └── parse(option: ParseOptions)                                               # parse方法
88```
89
90### 1.3. 说明
91
92#### 1.3.1. 接口说明
93
94
95| 接口名 | 说明 |
96| -------- | -------- |
97| URL(url: string,base?:string \| URL) | 创建并返回一个URL对象,该URL对象引用使用绝对URL字符串,相对URL字符串和基本URL字符串指定的URL。 |
98| tostring():string | 该字符串化方法返回一个包含完整 URL 的 USVString。它的作用等同于只读的 URL.href。 |
99| toJSON():string | 该方法返回一个USVString,其中包含一个序列化的URL版本。 |
100| new URLSearchParams() | URLSearchParams() 构造器无入参,该方法创建并返回一个新的URLSearchParams 对象。 开头的'?' 字符会被忽略。 |
101| new URLSearchParams(string) | URLSearchParams(string) 构造器的入参为string数据类型,该方法创建并返回一个新的URLSearchParams 对象。 开头的'?' 字符会被忽略。 |
102| new URLSearchParams(obj) | URLSearchParams(obj) 构造器的入参为obj数据类型,该方法创建并返回一个新的URLSearchParams 对象。 开头的'?' 字符会被忽略。 |
103| new URLSearchParams(iterable) | URLSearchParams(iterable) 构造器的入参为iterable数据类型,该方法创建并返回一个新的URLSearchParams 对象。 开头的'?' 字符会被忽略。 |
104| has(name: string): boolean | 检索searchParams对象中是否含有name。有则返回true,否则返回false。 |
105| set(name: string, value string): void |  检索searchParams对象中是否含有key为name的键值对。没有的话则添加该键值对,有的话则修改对象中第一个key所对应的value,并删除键为name的其余键值对。 |
106| sort(): void | 根据键的Unicode代码点,对包含在此对象中的所有键/值对进行排序,并返回undefined。 |
107| toString(): string | 根据searchParams对象,返回适用在URL中的查询字符串。 |
108| keys(): iterableIterator\<string> | 返回一个iterator,遍历器允许遍历对象中包含的所有key值。 |
109| values(): iterableIterator\<string> | 返回一个iterator,遍历器允许遍历对象中包含的所有value值。 |
110| append(name: string, value: string): void | 在searchParams对象中插入name, value键值对。 |
111| delete(name: string): void | 遍历searchParams对象,查找所有的name,删除对应的键值对。 |
112| get(name: string): string | 检索searchParams对象中第一个name,返回name键对应的值。 |
113| getAll(name: string): string[] | 检索searchParams对象中所有name,返回name键对应的所有值。 |
114| entries(): iterableIterator<[string, string]> | 返回一个iterator,允许遍历searchParams对象中包含的所有键/值对。 |
115| forEach(): void | 通过回调函数来遍历URLSearchParams实例对象上的键值对。 |
116| urlSearchParams\[Symbol.iterator]() | 返回查询字符串中每个名称-值对的ES6迭代器。迭代器的每个项都是一个JavaScript数组。 |
117| URI​(str: string) | 通过解析给定入参(String str)来构造URI。此构造函数严格按照RFC 2396附录A中的语法规定解析给定字符串。 |
118| scheme​ | 返回此 URI 的scheme部分,如果scheme未定义,则返回 null |
119| authority​ | 返回此 URI 的解码authority部分,如果authority未定义,则返回 null。 |
120| ssp​ |  返回此 URI 的解码scheme-specific部分。 |
121| userinfo​ | 返回此 URI 的解码userinfo部分。包含passworld和username。 |
122| host​ | 返回此 URI 的host部分,如果host未定义,则返回 null。 |
123| port​ | 返回此 URI 的port部分,如果port未定义,则返回 -1。URI 的port组件(如果已定义)是一个非负整数。 |
124| query​ | 返回此 URI 的query部分,如果query未定义,则返回 null。 |
125| fragment​ | 返回此 URI 的解码fragment组件,如果fragment未定义,则返回 null。|
126| path​ | 返回此 URI 的解码path组件,如果path未定义,则返回 null。 |
127| equals(ob: Object) | 测试此 URI 是否与另一个对象相等。如果给定的对象不是 URI,则此方法立即返回 false。 |
128| normalize​() | 规范化这个 URI 的路径。如果这个 URI 的path不规范,将规范后构造一个新 URI对象返回。 |
129| checkIsAbsolute​() | 判断这个 URI 是否是绝对的。当且仅当它具有scheme部分时,URI 是绝对的,返回值为true,否则返回值为false。 |
130| ConvertXml() | 用于构造ConvertXml类对象的构造函数。此构造函数无需传入参数。 |
131| convert(xml: string, options: Object)  | 返回按选项要求转化xml字符串的JavaScrip对象。 |
132| XmlSerializer(buffer: ArrayBuffer \| DataView, encoding?: string) | 创建并返回一个XmlSerializer对象,该XmlSerializer对象传参两个第一参数是ArrayBuffer或DataView一段内存,第二个参数为文件格式(默认为UTF-8)。 |
133| setAttributes(name: string, value: string): void | 给xml文件中写入属性Attributes属性。 |
134| addEmptyElement(name: string): void | 写入一个空元素。 |
135| setDeclaration(): void | 设置Declaration使用编码写入xml声明。例如:<?xml version=“1.0”encoding=“utf-8”> |
136| startElement(name: string): void | 写入具有给定名称的elemnet开始标记。|
137| endElement(): void | 写入元素的结束标记。 |
138| setNamespace(prefix: string, namespace: string): void | 写入当前元素标记的命名空间。 |
139| setCommnet(text: string): void | 写入comment属性。 |
140| setCData(text: string): void | 写入CData属性。 |
141| setText(text: string): void | 写入Text属性。 |
142| setDocType(text: string): void | 写入DocType属性。 |
143| XmlPullParser(buffer: ArrayBuffer \| DataView, encoding?: string) | 创建并返回一个XmlPullParser对象,该XmlPullParser对象传参两个第一参数是ArrayBuffer或DataView一段内存,第二个参数为文件格式(默认为UTF-8)。 |
144| parse(option: ParseOptions): void | 该接口用于解析xml,ParseOptions参数为一个接口包含五个可选参{supportDoctype?: boolea ignoreNameSpace?: boolean tagValueCallbackFunction?: (name: string, value: string) => boolean attributeValueCallbackFunction?: (name: string, value: string) => boolean) tokenValueCallbackFunction?: (eventType: EventType, value: ParseInfo) => boolean }。其中tokenValueCallbackFunction回调函数的入参1是事件类型,入参2是包含getColumnNumber、getDepth等get属性的info接口,用户可通过info.getDepth()等方法来获取当前解析过程中的depth等信息。 |
145#### 1.3.2. 使用说明
146
147各接口使用方法如下:
148
149
1501、new URL(url: string,base?:string|URL)
151```
152let b = new URL('https://developer.mozilla.org'); // => 'https://developer.mozilla.org/'
153
154let a = new URL( 'sca/./path/path/../scasa/text', 'http://www.example.com');
155// => 'http://www.example.com/sca/path/scasa/text'
156```
1572、tostring():string
158```
159const url = new URL('http://10.0xFF.O400.235:8080/directory/file?query#fragment');
160url.toString() // => 'http://10.0xff.o400.235:8080/directory/file?query#fragment'
161
162const url = new URL("http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html");
163url.toString() // => 'http://[fedc:ba98:7654:3210:fedc:ba98:7654:3210]/index.html'
164
165const url = new URL("http://username:password@host:8080/directory/file?query#fragment");
166url.toString() // => 'http://username:password@host:8080/directory/file?query#fragment'
167```
1683、toJSON():string
169```
170const url = new URL("https://developer.mozilla.org/en-US/docs/Web/API/URL/toString");
171url.toJSON(); // =>  'https://developer.mozilla.org/en-US/docs/Web/API/URL/toString'
172```
1734、new URLSearchParams()
174```
175let params = new URLSearchParams('foo=1&bar=2');
176```
1775、new URLSearchParams(string)
178```
179params = new URLSearchParams('user=abc&query=xyz');
180console.log(params.get('user'));
181// Prints 'abc'
182```
1836、new URLSearchParams(obj)
184```
185const params = new URLSearchParams({
186    user: 'abc',
187    query: ['first', 'second']
188});
189console.log(params.getAll('query'));
190// Prints [ 'first,second' ]
191```
1927、new URLSearchParams(iterable)
193```
194let params;
195
196// Using an array
197params = new URLSearchParams([
198    ['user', 'abc'],
199    ['query', 'first'],
200    ['query', 'second'],
201]);
202console.log(params.toString());
203// Prints 'user = abc & query = first&query = second'
204```
2058、has(name: string): boolean
206```
207console.log(params.has('bar')); // =>true
208```
2099、set(name: string, value string): void
210```
211params.set('baz', 3);
212```
21310、sort(): void
214```
215params .sort();
216```
21711、toString(): string
218```
219console.log(params .toString()); // =>bar=2&baz=3&foo=1'
220```
22112、keys(): iterableIterator\<string>
222```
223for(var key of params.keys()) {
224  console.log(key);
225} // =>bar  baz  foo
226```
22713、values(): iterableIterator\<string>
228```
229for(var value of params.values()) {
230  console.log(value);
231} // =>2  3  1
232```
23314、append(name: string, value: string): void
234```
235params.append('foo', 3); // =>bar=2&baz=3&foo=1&foo=3
236```
23715、delete(name: string): void
238```
239params.delete('baz'); // => bar=2&foo=1&foo=3
240```
24116、get(name: string): string
242```
243params.get('foo'); // => 1
244```
24517、getAll(name: string): string[]
246```
247params.getAll('foo'); // =>[ '1', '3' ]
248```
24918、entries(): iterableIterator<[string, string]>
250```
251for(var pair of searchParams.entries()) {
252   console.log(pair[0]+ ', '+ pair[1]);
253} // => bar, 2   foo, 1  foo, 3
254```
25519、forEach(): void
256```
257url.searchParams.forEach((value, name, searchParams) => {
258  console.log(name, value, url.searchParams === searchParams);
259});
260// => foo 1 true
261// => bar 2 true
262```
26320、urlSearchParams[Symbol.iterator] ()
264```
265const params = new URLSearchParams('foo=bar&xyz=baz');
266for (const [name, value] of params) {
267    console.log(name, value);
268}
269// Prints:
270// foo bar
271// xyz bar
272```
273
274
27521、URI​(str: string)
276```
277let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
278```
27922、scheme
280```
281let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
282gaogao.scheme        // => "http";
283```
28423、authority
285```
286let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
287gaogao.authority     // => "gg:gaogao@www.baidu.com:99";
288```
28924、ssp
290```
291let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
292gaogao.ssp "         // => gg:gaogao@www.baidu.com:99/path/path?query";
293```
29425、userinfo
295```
296let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
297gaogao.userinfo      // => "gg:gaogao";
298```
29926、host
300```
301let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
302gaogao.host          // => "www.baidu.com";
303```
30427、port
305```
306let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
307gaogao.port          // => "99";
308```
30928、query
310```
311let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
312gaogao.query         // => "query";
313```
31429、fragment
315```
316let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
317gaogao.fragment      // => "fagment";
318```
31930、path
320```
321let gaogao = new Uri.URI('http://gg:gaogao@www.baidu.com:99/path/path?query#fagment');
322gaogao.path          // => "/path/path";
323```
32431、equals(ob: Object)
325```
326let gaogao = new Uri.URI('http://gg:gaogao@[1:0:0:1:2:1:2:1]:99/path1?query#fagment');
327let gaogao1 = gaogao;
328let res = gaogao.equals(gaogao1);
329console.log(res);      // => true;
330```
33132、normalize​()
332```
333let gaogao = new Uri.URI('http://gg:gaogao@[1:0:0:1:2:1:2:1]:99/path/66./../././mm/.././path1?query#fagment');
334let res = gaogao.normalize();
335console.log(res.path);        // => "/path/path1"
336console.log(res.toString());  // => "http://gg:gaogao@[1:0:0:1:2:1:2:1]:99/path/path1?query#fagment"
337```
33833、checkIsAbsolute​()
339```
340let gaogao = new Uri.URI('f/tp://username:password@www.baidu.com:88/path?query#fagment');
341let res = gaogao.checkIsAbsolute();
342console.log(res);              //=> false;
343```
34434、toString()
345```
346let gaogao = new Uri.URI('http://gg:gaogao@[1:0:0:1:2:1:2:1]:99/../../path/.././../aa/bb/cc?query#fagment');
347let res = gaogao.toString();
348console.log(res.toString());     // => 'http://gg:gaogao@[1:0:0:1:2:1:2:1]:99/../../path/.././../aa/bb/cc?query#fagment';
349```
350
351
35235、ConvertXml()
353```
354var convertml = new convertXml.ConvertXml();
355```
35636、convert(xml: string, options: Object)
357```
358var result = convertml.convert(xml, {compact: false, spaces: 4});
359```
36037、new XmlSerializer(buffer: ArrayBuffer | DataView, encoding?: string)
361```
362
363var arrayBuffer = new ArrayBuffer(1024);
364var bufView = new DataView(arrayBuffer);
365var thatSer = new xml.XmlSerializer(bufView);
366```
36738、setDeclaration():void
368```
369var thatSer = new xml.XmlSerializer(bufView);
370thatSer.setDeclaration() // => <?xml version="1.0" encoding="utf-8"?>;
371```
37239、setCommnet(text: string):void
373```
374var thatSer = new xml.XmlSerializer(bufView);
375thatSer.setCommnet("Hello, World!"); // => <!--Hello, World!-->;
376```
37740、setCData(text: string) :void
378```
379var thatSer = new xml.XmlSerializer(bufView);
380thatSer.setDocType('root SYSTEM "http://www.test.org/test.dtd"'); // => <![CDATA[root SYSTEM \“http://www.test.org/test.dtd\”]]>
381```
38241、setDocType(text: string):void
383```
384var thatSer = new xml.XmlSerializer(bufView);
385thatSer.setDocType("foo"); // => <!DOCTYPE foo>
386```
38742、setNamespace(prefix: string, namespace: string): void
38843、startElement(name: string): void
38944、setAttributes(name: string, value: string): void
39045、endElement(): void
39146、setText(text: string): void
392```
393var thatSer = new xml.XmlSerializer(bufView);
394thatSer.setNamespace("h", "http://www.w3.org/TR/html4/");
395thatSer.startElement("table");
396thatSer.setAttributes("importance", "high");
397thatSer.setText("Happy");
398endElement(); // => <h:table importance="high" xmlns:h="http://www.w3.org/TR/html4/">Happy</h:table>
399```
40047、addEmptyElement(name: string): void
401```
402var thatSer = new xml.XmlSerializer(bufView);
403thatSer.addEmptyElement("b"); // => <b/>
404```
40548、new (buffer: ArrayBuffer | DataView, encoding?: string)
406```
407var strXml =
408            '<?xml version="1.0" encoding="utf-8"?>' +
409            '<note importance="high" logged="true">' +
410            '    <title>Happy</title>' +
411            '</note>';
412var arrayBuffer = new ArrayBuffer(strXml.length*2);
413var bufView = new Uint8Array(arrayBuffer);
414var strLen = strXml.length;
415for (var i = 0; i < strLen; ++i) {
416    bufView[i] = strXml.charCodeAt(i);//设置arraybuffer 方式
417}
418var that = new xml.XmlPullParser(arrayBuffer);
419
420```
42149、parse(option: ParseOptions): void
422```
423var strXml =
424            '<?xml version="1.0" encoding="utf-8"?>' +
425            '<note importance="high" logged="true">' +
426            '    <title>Happy</title>' +
427            '</note>';
428var arrayBuffer = new ArrayBuffer(strXml.length*2);
429var bufView = new Uint8Array(arrayBuffer);
430var strLen = strXml.length;
431for (var i = 0; i < strLen; ++i) {
432    bufView[i] = strXml.charCodeAt(i);
433}
434var that = new xml.XmlPullParser(arrayBuffer);
435var arrTag = {};
436arrTag[0] = '132';
437var i = 1;
438function func(key, value){
439    arrTag[i] = 'key:'+key+' value:'+ value.getDepth();
440    i++;
441    return true;
442}
443var options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func}
444that.parse(options);
445```
446
447## 2. js_util_module子模块
448### 2.1. 简介
449
450UTIL接口用于字符编码TextEncoder、解码TextDecoder、帮助函数HelpFunction、基于Base64的字节编码encode和解码decode、有理数RationalNumber。TextEncoder表示一个文本编码器,接受字符串作为输入,以UTF-8格式进行编码,输出UTF-8字节流。TextDecoder接口表示一个文本解码器,解码器将字节流作为输入,输出stirng字符串。HelpFunction主要是对函数做callback化、promise化以及对错误码进行编写输出,及类字符串的格式化输出。encode接口使用Base64编码方案将指定u8数组中的所有字节编码到新分配的u8数组中或者使用Base64编码方案将指定的字节数组编码为String。decode接口使用Base64编码方案将Base64编码的字符串或输入u8数组解码为新分配的u8数组。RationalNumber有理数主要是对有理数进行比较,获取分子分母等方法。LruBuffer该算法在缓存空间不够的时候,将近期最少使用的数据替换为新数据。该算法源自这样一种访问资源的需求:近期访问的数据,可能在不久的将来会再次访问。于是最少访问的数据就是价值最小的,是最应该踢出缓存空间的数据。Scope接口用于描述一个字段的有效范围。 Scope实例的构造函数用于创建具有指定下限和上限的对象,并要求这些对象必须具有可比性。
451### 2.2. 目录
452
453```
454commomlibrary/ets_utils/js_util_module/
455├── Class:TextEncoder                   # TextEncoder类
456│   ├──  new TextEncoder()              # 创建TextEncoder对象
457│   ├──  encode()                       # encode方法
458│   ├──  encoding                       # encoding属性
459│   └──  encodeInto()                   # encodeInto方法
460├── Class:TextDecoder                   # TextDecoder类
461│   ├──  new TextDecoder()              # 创建TextDecoder对象
462│   ├──  decode()                       # decode方法
463|   ├──  decodeWithStream()             # decodeWithStream方法
464│   ├──  encoding                       # encoding属性
465│   ├──  fatal                          # fatal属性
466│   └──  ignoreBOM                      # ignoreBOM属性
467├── printf()                            # printf方法
468├── getErrorString()                    # getErrorString方法
469├── callbackWrapper()                   # callbackWrapper方法
470├── promiseWrapper()                    # promiseWrapper方法
471├── Class:Base64                        # Base64类
472│   ├──  new Base64()                   # 创建Base64对象
473│   ├──  encodeSync()                   # encodeSync方法
474│   ├──  encodeToStringSync()           # encodeToStringSync方法
475│   ├──  decodeSync()                   # decodeSync方法
476│   ├──  encode()                       # encode方法
477│   ├──  encodeToString()               # encodeToString方法
478│   └──  decode()                       # decode方法
479├── Class:RationalNumber                # RationalNumber类
480│   ├──  new RationalNumber()           # 创建RationalNumber对象
481│   ├──  createRationalFromString()     # createRationalFromString方法
482│   ├──  compareTo()                    # compareTo方法
483│   ├──  equals()                       # equals方法
484│   ├──  valueOf()                      # valueOf方法
485│   ├──  getCommonDivisor()             # getCommonDivisor方法
486│   ├──  getDenominator()               # getDenominator方法
487│   ├──  getNumerator()                 # getNumerator方法
488│   ├──  isFinite()                     # isFinite方法
489│   ├──  isNaN()                        # isNaN方法
490│   ├──  isZero()                       # isZero方法
491│   └──  toString()                     # toString方法
492├── Class:LruBuffer                     # LruBuffer类
493│   ├──  new LruBuffer()                # 创建LruBuffer对象
494│   ├──  updateCapacity()               # updateCapacity方法
495│   ├──  toString()                     # toString方法
496│   ├──  values()                       # values方法
497│   ├──  length                         # length属性
498│   ├──  getCapacity()                  # getCapacity方法
499│   ├──  clear()                        # clear方法
500│   ├──  getCreateCount()               # getCreateCount方法
501│   ├──  getMissCount()                 # getMissCount方法
502│   ├──  getRemovalCount()              # getRemovalCount方法
503│   ├──  getMatchCount()                # getMatchCount方法
504│   ├──  getPutCount()                  # getPutCount方法
505│   ├──  isEmpty()                      # isEmpty方法
506│   ├──  get()                          # get方法
507│   ├──  put()                          # put方法
508│   ├──  keys()                         # keys方法
509│   ├──  remove()                       # remove方法
510│   ├──  afterRemoval()                 # afterRemoval方法
511│   ├──  contains()                     # contains方法
512│   ├──  createDefault()                # createDefault方法
513│   ├──  entries()                      # entries方法
514│   └──  [Symbol.iterator]()            # Symboliterator方法
515|—— Class:Scope                         # Scope类
516|   ├── constructor()                   # 创建Scope对象
517|   ├── toString()                      # toString方法
518|   ├── intersect()                     # intersect方法
519|   ├── intersect()                     # intersect方法
520|   ├── getUpper()                      # getUpper方法
521|   ├── getLower()                      # getLower方法
522|   ├── expand()                        # expand方法
523|   ├── expand()                        # expand方法
524|   ├── expand()                        # expand法
525|   ├── contains()                      # contains方法
526|   ├── contains()                      # contains方法
527|   └── clamp()                         # clamp方法
528|—— Class:Types                         # Types类
529|   ├── isAnyArrayBuffer()              # isAnyArrayBuffer方法
530|   ├── isArrayBufferView()             # isArrayBufferView方法
531|   ├── isArgumentsObject()             # isArgumentsObject方法
532|   ├── isArrayBuffer()                 # isArrayBuffer方法
533|   ├── isAsyncFunction()               # isAsyncFunction方法
534|   ├── isBigInt64Array()               # isBigInt64Array方法
535|   ├── isBigUint64Array()              # isBigUint64Array方法
536|   ├── isBooleanObject()               # isBooleanObject方法
537|   ├── isBoxedPrimitive()              # isBoxedPrimitive方法
538|   ├── isDataView()                    # isDataView方法
539|   ├── isDate()                        # isDate方法
540|   ├── isExternal()                    # isExternal方法
541|   ├── isFloat32Array()                # isFloat32Array方法
542|   ├── isFloat64Array()                # isFloat64Array方法
543|   ├── isGeneratorFunction()           # isGeneratorFunction方法
544|   ├── isGeneratorObject()             # isGeneratorObject方法
545|   ├── isInt8Array()                   # isInt8Array方法
546|   ├── isInt16Array()                  # isInt16Array方法
547|   ├── isInt32Array()                  # isInt32Array方法
548|   ├── isMap()                         # isMap方法
549|   ├── isMapIterator()                 # isMapIterator方法
550|   ├── isModuleNamespaceObject()       # isModuleNamespaceObject方法
551|   ├── isNativeError()                 # isNativeError方法
552|   ├── isNumberObject()                # isNumberObject方法
553|   ├── isPromise()                     # isPromise方法
554|   ├── isProxy()                       # isProxy方法
555|   ├── isRegExp()                      # isRegExp方法
556|   ├── isSet()                         # isSet方法
557|   ├── isSetIterator()                 # isSetIterator方法
558|   ├── isSharedArrayBuffer()           # isSharedArrayBuffer方法
559|   ├── isStringObject()                # isStringObject方法
560|   ├── isSymbolObject()                # isSymbolObject方法
561|   ├── isTypedArray()                  # isTypedArray方法
562|   ├── isUint8Array()                  # isUint8Array方法
563|   ├── isUint8ClampedArray()           # isUint8ClampedArray方法
564|   ├── isUint16Array()                 # isUint16Array方法
565|   ├── isUint32Array()                 # isUint32Array方法
566|   ├── isWeakMap()                     # isWeakMap方法
567|   └── isWeakSet()                     # isWeakSet方法
568|—— Class:ArrayList
569|   ├── new ArrayList()                 # 创建ArrayList对象
570|   ├── length                          # length属性
571|   ├── add()                           # add方法
572|   ├── insert()                        # insert方法
573|   ├── has()                           # has方法
574|   ├── getIndexOf()                    # getIndexOf方法
575|   ├── removeByIndex()                 # removeByIndex方法
576|   ├── remove()                        # remove方法
577|   ├── getLastIndexOf()                # getLastIndexOf方法
578|   ├── removeByRange()                 # removeByRange方法
579|   ├── replaceAllElements()            # replaceAllElements方法
580|   ├── forEach()                       # forEach方法
581|   ├── sort()                          # sort方法
582|   ├── subArrayList()                  # subArrayList方法
583|   ├── clear()                         # clear方法
584|   ├── clone()                         # clone方法
585|   ├── getCapacity()                   # getCapacity方法
586|   ├── convertToArray()                # convertToArray方法
587|   ├── isEmpty()                       # isEmpty方法
588|   ├── increaseCapacityTo()            # increaseCapacityTo方法
589|   ├── trimToCurrentLength()           # trimToCurrentLength方法
590|   └── isEmpty()                       # isEmpty方法
591|—— Class:Deque
592|   ├── new Deque()                     # 创建Deque对象
593|   ├── length                          # length属性
594|   ├── add()                           # add方法
595|   ├── insertFront()                   # insertFront方法
596|   ├── insertEnd()                     # insertEnd方法
597|   ├── has()                           # has方法
598|   ├── getFirst()                      # getFirst方法
599|   ├── getLast()                       # getLast方法
600|   ├── popFirst()                      # popFirst方法
601|   ├── popLast()                       # popLast方法
602|   └── forEach()                       # forEach方法
603|—— Class:HashMap
604|   ├── new HashMap()                   # 创建HashMap对象
605|   ├── length                          # length属性
606|   ├── isEmpty()                       # isEmpty方法
607|   ├── hasKey()                        # hasKey方法
608|   ├── hasValue()                      # hasValue方法
609|   ├── setAll()                        # setAll方法
610|   ├── set()                           # set方法
611|   ├── remove()                        # remove方法
612|   ├── clear()                         # clear方法
613|   ├── keys()                          # keys方法
614|   ├── values()                        # values方法
615|   ├── replace()                       # replace方法
616|   ├── forEach()                       # forEach方法
617|   └── entries()                       # entries方法
618|—— Class:HashSet
619|   ├── new HashSet()                   # 创建HashSet对象
620|   ├── length                          # length属性
621|   ├── isEmpty()                       # isEmpty方法
622|   ├── has()                           # has方法
623|   ├── add()                           # add方法
624|   ├── remove()                        # remove方法
625|   ├── clear()                         # clear方法
626|   ├── forEach()                       # forEach方法
627|   ├── values()                        # values方法
628|   └── entries()                       # entries方法
629|—— Class:LightWeightMap
630|   ├── new LightWeightMap()            # 创建LightWeightMap对象
631|   ├── length                          # length属性
632|   ├── hasAll()                        # hasAll方法
633|   ├── hasKey()                        # hasKey方法
634|   ├── hasValue()                      # hasValue方法
635|   ├── increaseCapacityTo()            # increaseCapacityTo方法
636|   ├── entries()                       # entries方法
637|   ├── get()                           # get方法
638|   ├── getIndexOfKey()                 # getIndexOfKey方法
639|   ├── getIndexOfValue()               # getIndexOfValue方法
640|   ├── isEmpty()                       # isEmpty方法
641|   ├── getKeyAt()                      # getKeyAt方法
642|   ├── keys()                          # keys方法
643|   ├── setAll()                        # setAll方法
644|   ├── set()                           # set方法
645|   ├── remove()                        # remove方法
646|   ├── removeAt()                      # removeAt方法
647|   ├── clear()                         # clear方法
648|   ├── setValueAt()                    # setValueAt方法
649|   ├── forEach()                       # forEach方法
650|   ├── toString()                      # toString方法
651|   ├── getValueAt()                    # getValueAt方法
652|   ├── values()                        # values方法
653|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
654|—— Class:LightWeightSet
655|   ├── new LightWeightSet()            # 创建LightWeightSet对象
656|   ├── length                          # length属性
657|   ├── add()                           # add方法
658|   ├── addAll()                        # addAll方法
659|   ├── hasAll()                        # hasAll方法
660|   ├── has()                           # has方法
661|   ├── equal()                         # equal方法
662|   ├── increaseCapacityTo()            # increaseCapacityTo方法
663|   ├── getIndexOf()                    # getIndexOf方法
664|   ├── remove()                        # remove方法
665|   ├── removeAt()                      # removeAt方法
666|   ├── clear()                         # clear方法
667|   ├── forEach()                       # forEach方法
668|   ├── [Symbol.iterator]()             # [Symbol.iterator]方法
669|   ├── toString()                      # toString方法
670|   ├── toArray()                       # toArray方法
671|   ├── getValueAt()                    # getValueAt方法
672|   ├── values()                        # values方法
673|   ├── entries()                       # entries方法
674|   └── isEmpty()                       # isEmpty方法
675|—— Class:LinkedList
676|   ├── new LinkedList()                # 创建LinkedList对象
677|   ├── length                          # length属性
678|   ├── add()                           # add方法
679|   ├── insert()                        # insert方法
680|   ├── get()                           # get方法
681|   ├── addFirst()                      # addFirst方法
682|   ├── removeFirst()                   # removeFirst方法
683|   ├── removeLast()                    # removeLast方法
684|   ├── has()                           # has方法
685|   ├── getIndexOf()                    # getIndexOf方法
686|   ├── removeByIndex()                 # removeByIndex方法
687|   ├── remove()                        # remove方法
688|   ├── removeFirstFound()              # removeFirstFound方法
689|   ├── removeLastFound()               # removeLastFound方法
690|   ├── getLastIndexOf()                # getLastIndexOf方法
691|   ├── getFirst()                      # getFirst方法
692|   ├── getLast()                       # getLast方法
693|   ├── set()                           # set方法
694|   ├── forEach()                       # forEach方法
695|   ├── clear()                         # clear方法
696|   ├── clone()                         # clone方法
697|   ├── convertToArray()                # convertToArray方法
698|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
699|—— Class:List
700|   ├── new List()                      # 创建List对象
701|   ├── length                          # length属性
702|   ├── add()                           # add方法
703|   ├── insert()                        # insert方法
704|   ├── get()                           # get方法
705|   ├── has()                           # has方法
706|   ├── getIndexOf()                    # getIndexOf方法
707|   ├── removeByIndex()                 # removeByIndex方法
708|   ├── remove()                        # remove方法
709|   ├── getLastIndexOf()                # getLastIndexOf方法
710|   ├── getFirst()                      # getFirst方法
711|   ├── getLast()                       # getLast方法
712|   ├── set()                           # set方法
713|   ├── equal()                         # equal方法
714|   ├── forEach()                       # forEach方法
715|   ├── sort()                          # sort方法
716|   ├── clear()                         # clear方法
717|   ├── getSubList()                    # getSubList方法
718|   ├── replaceAllElements()            # replaceAllElements方法
719|   ├── convertToArray()                # convertToArray方法
720|   ├── isEmpty()                       # isEmpty方法
721|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
722|—— Class:PlainArray
723|   ├── new PlainArray()                # 创建PlainArray对象
724|   ├── length                          # length属性
725|   ├── add()                           # add方法
726|   ├── clear()                         # clear方法
727|   ├── clone()                         # clone方法
728|   ├── has()                           # has方法
729|   ├── get()                           # get方法
730|   ├── getIndexOfKey()                 # getIndexOfKey方法
731|   ├── getIndexOfValue()               # getIndexOfValue方法
732|   ├── isEmpty()                       # isEmpty方法
733|   ├── getKeyAt()                      # getKeyAt方法
734|   ├── remove()                        # remove方法
735|   ├── removeAt()                      # removeAt方法
736|   ├── removeRangeFrom()               # removeRangeFrom方法
737|   ├── setValueAt()                    # setValueAt方法
738|   ├── toString()                      # toString方法
739|   ├── getValueAt()                    # getValueAt方法
740|   ├── forEach()                       # forEach方法
741|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
742|—— Class:Queue
743|   ├── new Queue()                     # 创建Queue对象
744|   ├── length                          # length属性
745|   ├── add()                           # add方法
746|   ├── getFirst()                      # getFirst方法
747|   ├── pop()                           # pop方法
748|   ├── forEach()                       # forEach方法
749|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
750|—— Class:Stack
751|   ├── new Stack()                     # 创建Stack对象
752|   ├── length                          # length属性
753|   ├── isEmpty()                       # isEmpty方法
754|   ├── peek()                          # peek方法
755|   ├── pop()                           # pop方法
756|   ├── push()                          # push方法
757|   ├── locate()                        # locate方法
758|   ├── forEach()                       # forEach方法
759|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
760|—— Class:TreeMap
761|   ├── new TreeMap()                   # 创建TreeMap对象
762|   ├── length                          # length属性
763|   ├── isEmpty()                       # isEmpty方法
764|   ├── hasKey()                        # hasKey方法
765|   ├── hasValue()                      # hasValue方法
766|   ├── get()                           # get方法
767|   ├── getFirstKey()                   # getFirstKey方法
768|   ├── getLastKey()                    # getLastKey方法
769|   ├── setAll()                        # setAll方法
770|   ├── set()                           # set方法
771|   ├── remove()                        # remove方法
772|   ├── clear()                         # clear方法
773|   ├── getLowerKey()                   # getLowerKey方法
774|   ├── getHigherKey()                  # getHigherKey方法
775|   ├── keys()                          # keys方法
776|   ├── values()                        # values方法
777|   ├── replace()                       # replace方法
778|   ├── forEach()                       # forEach方法
779|   ├── entries()                       # entries方法
780|   └── [Symbol.iterator]()             # [Symbol.iterator]方法
781└── Class:TreeSet
782    ├── new TreeSet()                   # 创建TreeSet对象
783    ├── length                          # length属性
784    ├── isEmpty()                       # isEmpty方法
785    ├── has()                           # has方法
786    ├── add()                           # add方法
787    ├── remove()                        # remove方法
788    ├── clear()                         # clear方法
789    ├── getFirstValue()                 # getFirstValue方法
790    ├── getLastValue()                  # getLastValue方法
791    ├── getLowerValue()                 # getLowerValue方法
792    ├── getHigherValue()                # getHigherValue方法
793    ├── popFirst()                      # popFirst方法
794    ├── popLast()                       # popLast方法
795    ├── forEach()                       # forEach方法
796    ├── values()                        # values方法
797    ├── entries()                       # entries方法
798    └── [Symbol.iterator]()             # [Symbol.iterator]方法
799```
800
801### 2.3. 说明
802
803#### 2.3.1. 接口说明
804
805
806| 接口名 | 说明 |
807| -------- | -------- |
808| constructor(encoding? : string) | 构造函数,参数encoding表示编码的格式。默认utf-8, 支持gb18030, gbk, gb2312. |
809| readonly encoding : string | 在TextEncoder类中,获取编码的格式,只支持UTF-8。 |
810| encode(input : string) : Uint8Array | 输入stirng字符串,根据encodeing编码并输出uint8字节流。 |
811| encodeInto(input : string, dest : Uint8Array) : {read : number, written : number} | 输入stirng字符串,dest表示编码后存放位置,返回一个对象,read表示已经编码的字符的个数,written表示已编码字符所占字节的大小。 |
812| constructor(encoding? : string, options? : {fatal? : boolean, ignoreBOM? : boolean}) | 构造函数,第一个参数encoding表示解码的格式。第二个参数表示一些属性。属性中fatal表示是否抛出异常,ignoreBOM表示是否忽略bom标志。 |
813| readonly encoding : string | 在TextDecoder类中,获取设置的解码格式。 |
814| readonly fatal : boolean | 获取抛出异常的设置。 |
815| readonly ignoreBOM : boolean | 获取是否忽略bom标志的设置。 |
816| decode(input : Uint8Array, options?: { stream?: false }) : string | 输入要解码的数据,解出对应的string字符串。第一个参数input表示要解码的数据,第二个参数options表示一个bool标志,表示将跟随附加数据,默认为false。 |
817| decodeWithStream(input : Uint8Array, options?: { stream?: false }) : string | 输入要解码的数据,解出对应的string字符串。第一个参数input表示要解码的数据,第二个参数options表示一个bool标志,表示将跟随附加数据,默认为false。 |
818| encodeSync(src: Uint8Array): Uint8Array; | 使用Base64编码方案将指定u8数组中的所有字节编码到新分配的u8数组中。 |
819| encodeToStringSync(src: Uint8Array): string; | 使用Base64编码方案将指定的字节数组编码为String。 |
820| decodeSync(src: Uint8Array \| string): Uint8Array; | 使用Base64编码方案将Base64编码的字符串或输入u8数组解码为新分配的u8数组。 |
821| encode(src: Uint8Array): Promise\<Uint8Array\>; | 使用Base64编码方案将指定u8数组中的所有字节异步编码到新分配的u8数组中。 |
822| encodeToString(src: Uint8Array): Promise\<string\>; | 使用Base64编码方案将指定的字节数组异步编码为String。 |
823| decode(src: Uint8Array \| string): Promise\<Uint8Array\>; | 使用Base64编码方案将Base64编码的字符串或输入u8数组异步解码为新分配的u8数组。 |
824| static createRationalFromString(rationalString: string): RationalNumber | 基于给定的字符串创建一个RationalNumber对象。 |
825| compareTo(another: RationalNumber): number | 将当前的RationalNumber对象与给定的对象进行比较。 |
826| equals(obj: object): number | 检查给定对象是否与当前 RationalNumber 对象相同。 |
827| valueOf(): number | 将当前的RationalNumber对象进行取整数值或者浮点数值。 |
828| static getCommonDivisor(number1: number, number2: number,): number | 获得两个指定数的最大公约数。 |
829| getDenominator(): number | 获取当前的RationalNumber对象的分母。 |
830| getNumerator(): number | 获取当前的RationalNumber对象的分子。 |
831| isFinite(): boolean | 检查当前的RationalNumber对象是有限的。 |
832| isNaN(): boolean | 检查当前RationalNumber对象是否表示非数字(NaN)值。 |
833| isZero(): boolean | 检查当前RationalNumber对象是否表示零值。 |
834| toString(): string | 获取当前RationalNumber对象的字符串表示形式。 |
835| constructor(capacity?: number) | 创建默认构造函数用于创建一个新的LruBuffer实例,默认容量为64。 |
836| updateCapacity(newCapacity: number): void | 将缓冲区容量更新为指定容量,如果 newCapacity 小于或等于 0,则抛出此异常。 |
837| toString(): string | 返回对象的字符串表示形式,输出对象的字符串表示  |
838| values(): V[] | 获取当前缓冲区中所有值的列表,输出按升序返回当前缓冲区中所有值的列表,从最近访问到最近最少访问。 |
839| length: number | 代表当前缓冲区中值的总数,输出返回当前缓冲区中值的总数。 |
840| getCapacity(): number | 获取当前缓冲区的容量,输出返回当前缓冲区的容量。 |
841| clear(): void | 从当前缓冲区清除键值对,清除键值对后,调用afterRemoval()方法依次对其执行后续操作。 |
842| getCreateCount(): number | 获取createDefault()返回值的次数,输出返回createDefault()返回值的次数。 |
843| getMissCount(): number | 获取查询值不匹配的次数,输出返回查询值不匹配的次数。 |
844| getRemovalCount(): number | 获取从缓冲区中逐出值的次数,输出从缓冲区中驱逐的次数。 |
845| getMatchCount​(): number | 获取查询值匹配成功的次数,输出返回查询值匹配成功的次数。 |
846| getPutCount(): number | 获取将值添加到缓冲区的次数,输出返回将值添加到缓冲区的次数。 |
847| isEmpty(): boolean | 检查当前缓冲区是否为空,输出如果当前缓冲区不包含任何值,则返回 true 。 |
848| get(key: K) : V \| undefined | 表示要查询的键,输出如果指定的键存在于缓冲区中,则返回与键关联的值;否则返回undefined。 |
849| put(key: K , value: V): V | 将键值对添加到缓冲区,输出与添加的键关联的值;如果要添加的键已经存在,则返回原始值,如果键或值为空,则抛出此异常。 |
850| keys(): K[ ] | 获取当前缓冲区中值的键列表,输出返回从最近访问到最近最少访问排序的键列表。 |
851| remove​(key: K): V \| undefined |  从当前缓冲区中删除指定的键及其关联的值。 |
852| afterRemoval(isEvict: boolean, key: K, value : V, newValue : V):void | 删除值后执行后续操作。 |
853| contains(key: K): boolean | 检查当前缓冲区是否包含指定的键,输出如果缓冲区包含指定的键,则返回 true 。 |
854| createDefault(key: K): V | 如果未计算特定键的值,则执行后续操作,参数表示丢失的键,输出返回与键关联的值。 |
855| entries(): [K,V] | 允许迭代包含在这个对象中的所有键值对。每对的键和值都是对象。 |
856| \[Symbol.iterator\](): [K,V] | 返回以键值对得形式得一个二维数组。 |
857| constructor(lowerObj: ScopeType, upperObj : ScopeType) | 创建并返回一个Scope对象,用于创建指定下限和上限的作用域实例的构造函数。 |
858| toString(): string | 该字符串化方法返回一个包含当前范围的字符串表示形式。 |
859| intersect(range: Scope): Scope | 获取给定范围和当前范围的交集。 |
860| intersect(lowerObj: ScopeType, upperObj: ScopeType): Scope | 获取当前范围与给定下限和上限范围的交集。 |
861| getUpper(): ScopeType | 获取当前范围的上限。 |
862| getLower(): ScopeType | 获取当前范围的下限。 |
863| expand(lowerObj: ScopeType, upperObj:  ScopeType): Scope | 创建并返回包括当前范围和给定下限和上限的并集。 |
864| expand(range: Scope): Scope | 创建并返回包括当前范围和给定范围的并集。 |
865| expand(value: ScopeType): Scope | 创建并返回包括当前范围和给定值的并集。 |
866| contains(value: ScopeType): boolean | 检查给定value是否包含在当前范围内。 |
867| contains(range: Scope): boolean | 检查给定range是否在当前范围内。 |
868| clamp(value: ScopeType): ScopeType | 将给定value限定到当前范围内。 |
869| function printf(format: string, ...args: Object[]): string | printf()方法使用第一个参数作为格式字符串(其可以包含零个或多个格式说明符)来返回格式化的字符串。 |
870| function getErrorString(errno: number): string | getErrorString()方法使用一个系统的错误数字作为参数,用来返回系统的错误信息。 |
871| function callbackWrapper(original: Function): (err: Object, value: Object) => void | 参数为一个采用 async 函数(或返回 Promise 的函数)并返回遵循错误优先回调风格的函数,即将 (err, value) => ... 回调作为最后一个参数。 在回调中,第一个参数将是拒绝原因(如果 Promise 已解决,则为 null),第二个参数将是已解决的值。 |
872| function promiseWrapper(original: (err: Object, value: Object) => void): Object | 参数为采用遵循常见的错误优先的回调风格的函数(也就是将 (err, value) => ... 回调作为最后一个参数),并返回一个返回 promise 的版本。 |
873| isAnyArrayBuffer(value: Object): boolean | 检查输入的value是否是ArrayBuffer或SharedArrayBuffer类型。 |
874| isArrayBufferView(value: Object): boolean | 检查输入的value是否是napi_int8_array或napi_uint8_array或napi_uint8_clamped_array或napi_int16_array或napi_uint16_array或napi_int32_array或napi_uint32_array或napi_float32_array或napi_float64_array数组或DataView类型。 |
875| isArgumentsObject(value: Object): boolean | 检查输入的value是否是一个arguments对象类型。 |
876| isArrayBuffer(value: Object): boolean | 检查输入的value是否是ArrayBuffer类型。 |
877| isAsyncFunction(value: Object): boolean | 检查输入的value是否是异步函数类型。 |
878| isBigInt64Array(value: Object): boolean | 检查输入的value是否是BigInt64Array数组类型。 |
879| isBigUint64Array(value: Object): boolean | 检查输入的value是否是BigUint64Array数组类型。 |
880| isBooleanObject(value: Object): boolean | 检查输入的value是否是一个布尔对象类型。 |
881| isBoxedPrimitive(value: Object): boolean | 检查输入的value是否是Boolean或Number或String或Symbol对象类型。 |
882| isDataView(value: Object): boolean | 检查输入的value是否是DataView类型。 |
883| isDate(value: Object): boolean | 检查输入的value是否是Date类型。 |
884| isExternal(value: Object): boolean | 检查输入的value是否是一个native External值类型。 |
885| isFloat32Array(value: Object): boolean | 检查输入的value是否是Float32Array数组类型。 |
886| isFloat64Array(value: Object): boolean | 检查输入的value是否是Float64Array数组类型。 |
887| isGeneratorFunction(value: Object): boolean | 检查输入的value是否是一个generator函数类型。 |
888| isGeneratorObject(value: Object): boolean | 检查输入的value是否是一个generator对象类型。 |
889| isInt8Array(value: Object): boolean | 检查输入的value是否是Int8Array数组类型。 |
890| isInt16Array(value: Object): boolean | 检查输入的value是否是Int16Array数组类型。 |
891| isInt32Array(value: Object): boolean | 检查输入的value是否是Int32Array数组类型。 |
892| isMap(value: Object): boolean | 检查输入的value是否是Map类型。 |
893| isMapIterator(value: Object): boolean | 检查输入的value是否是Map的iterator类型。 |
894| isModuleNamespaceObject(value: Object): boolean | 检查输入的value是否是Module Namespace Object对象类型。 |
895| isNativeError(value: Object): boolean | 检查输入的value是否是Error类型。 |
896| isNumberObject(value: Object): boolean | 检查输入的value是否是Number对象类型。 |
897| isPromise(value: Object): boolean | 检查输入的value是否是Promise类型。 |
898| isProxy(value: Object): boolean | 检查输入的value是否是Proxy类型。 |
899| isRegExp(value: Object): boolean | 检查输入的value是否是RegExp类型。 |
900| isSet(value: Object): boolean | 检查输入的value是否是Set类型。 |
901| isSetIterator(value: Object): boolean | 检查输入的value是否是Set的iterator类型。 |
902| isSharedArrayBuffer(value: Object): boolean | 检查输入的value是否是SharedArrayBuffer类型。 |
903| isStringObject(value: Object): boolean | 检查输入的value是否是一个String对象类型。 |
904| isSymbolObject(value: Object): boolean | 检查输入的value是否是一个Symbol对象类型。 |
905| isTypedArray(value: Object): boolean | 检查输入的value是否是TypedArray包含的类型。 |
906| isUint8Array(value: Object): boolean | 检查输入的value是否是Uint8Array数组类型。 |
907| isUint8ClampedArray(value: Object): boolean | 检查输入的value是否是Uint8ClampedArray数组类型。 |
908| isUint16Array(value: Object): boolean | 检查输入的value是否是Uint16Array数组类型。 |
909| isUint32Array(value: Object): boolean | 检查输入的value是否是Uint32Array数组类型。 |
910| isWeakMap(value: Object): boolean | 检查输入的value是否是WeakMap类型。 |
911| isWeakSet(value: Object): boolean | 检查输入的value是否是WeakSet类型。 |
912| add(element: T): boolean | 在ArrayList尾部插入元素。 |
913| insert(element: T, index: number): void | 在长度范围内任意位置插入指定元素。 |
914| has(element: T): boolean | 判断此ArrayList中是否含有该指定元素。 |
915| getIndexOf(element: T): number | 返回指定元素第一次出现时的下标值,查找失败返回-1。 |
916| removeByIndex(index: number): T | 根据元素的下标值查找元素,返回元素后将其删除。 |
917| remove(element: T): boolean | 删除查找到的第一个指定的元素。 |
918| getLastIndexOf(element: T): number | 返回指定元素最后一次出现时的下标值,查找失败返回-1。 |
919| removeByRange(fromIndex: number, toIndex: number): void | 从一段范围内删除元素,包括起始值但不包括终止值。 |
920| replaceAllElements(callbackFn: (value: T, index?: number, arrlist?: ArrayList<T>) => T,
921thisArg?: Object): void | 用户操作ArrayList中的元素,用操作后的元素替换原元素并返回操作后的元素。 |
922| forEach(callbackFn: (value: T, index?: number, arrlist?: ArrayList<T>) => void,
923  thisArg?: Object): void | 通过回调函数来遍历ArrayList实例对象上的元素以及元素对应的下标。 |
924| sort(comparator?: (firstValue: T, secondValue: T) => number): void | 对ArrayList中的元素排序。 |
925| subArrayList(fromIndex: number, toIndex: number): ArrayList<T> | 根据下标截取ArrayList中的一段元素,并返回这一段ArrayList实例,包括起始值但不包括终止值。 |
926| clear(): void | 清除ArrayList中的所有元素,并把length置为0。 |
927| clone(): ArrayList<T> | 克隆一个与ArrayList相同的实例,并返回克隆后的实例。修改克隆后的实例并不会影响原实例。 |
928| getCapacity(): number | 获取当前实例的容量大小。 |
929| convertToArray(): Array<T> | 把当前ArrayList实例转换成数组,并返回转换后的数组。 |
930| isEmpty(): boolean | 判断该ArrayList是否为空。 |
931| increaseCapacityTo(newCapacity: number): void | 如果传入的新容量大于或等于ArrayList中的元素个数,将容量变更为新容量。 |
932| trimToCurrentLength(): void | 把容量限制为当前的length大小。 |
933| insertFront(element: T): void | 在deque头部插入元素。 |
934| insertEnd(element: T): void | 在deque尾部插入元素。 |
935| has(element: T): boolean | 判断此Deque中是否含有该指定元素。 |
936| getFirst(): T | 获取Deque实例中的头元素。 |
937| getLast(): T | 获取Deque实例中的尾元素。 |
938| popFirst(): T | 删除并返回双端队列的首元素。 |
939| popLast(): T | 删除并返回双端队列的尾元素。 |
940| forEach(callbackFn: (value: T, index?: number, deque?: Deque<T>) => void,thisArg?: Object): void |
941通过回调函数来遍历Deque实例对象上的元素以及元素对应的下标。 |
942| isEmpty(): boolean | 判断该HashMap是否为空。 |
943| hasKey(key: K): boolean | 判断此HashMap中是否含有该指定key。 |
944| hasValue(value: V): boolean | 判断此HashMap中是否含有该指定value。 |
945| get(key: K): V | 获取指定key所对应的value。 |
946| setAll(map: HashMap<K, V>): void | 将一个HashMap中的所有元素组添加到另一个hashMap中。 |
947| set(key: K, value: V): Object | 向HashMap中添加一组数据。 |
948| remove(key: K): V | 删除指定key所对应元素。 |
949| clear(): void | 清除HashMap中的所有元素,并把length置为0。 |
950| keys(): IterableIterator<K> | 返回包含此映射中包含的键名的新迭代器对象。 |
951| values(): IterableIterator<V> | 返回包含此映射中包含的键值的新迭代器对象。 |
952| replace(key: K, newValue: V): boolean | 对HashMap中一组数据进行更新(替换)。 |
953| forEach(callbackFn: (value?: V, key?: K, map?: HashMap<K, V>) => void,thisArg?: Object): void |
954通过回调函数来遍历HashMap实例对象上的元素以及元素对应的下标。 |
955| entries(): IterableIterator<[K, V]> | 返回包含此映射中包含的键值对的新迭代器对象。 |
956| isEmpty(): boolean | 判断该HashSet是否为空。 |
957| has(value: T): boolean | 判断此HashSet中是否含有该指定元素。 |
958| add(value: T): boolean | 向HashSet中添加数据。 |
959| remove(value: T): boolean | 删除指定的元素。 |
960| clear(): void | 清除HashSet中的所有元素,并把length置为0。 |
961| forEach(callbackFn: (value?: T, key?: T, set?: HashSet<T>) => void,thisArg?: Object): void |
962通过回调函数来遍历实例对象上的元素以及元素对应的下标。 |
963| values(): IterableIterator<T> | 返回包含此映射中包含的键值的新迭代器对象。 |
964| entries(): IterableIterator<[T, T]> | 返回包含此映射中包含的键值对的新迭代器对象。 |
965| hasAll(map: LightWeightMap<K, V>): boolean | 判断此LightWeightMap中是否含有该指定map中的所有元素。 |
966| hasKey(key: K): boolean | 判断此LightWeightMap中是否含有该指定key。 |
967| hasValue(value: V): boolean | 判断此LightWeightMap中是否含有该指定value。 |
968| increaseCapacityTo(minimumCapacity: number): void | 将当前LightWeightMap扩容至可以容纳指定数量元素。 |
969| entries(): IterableIterator<[K, V]> | 返回包含此映射中包含的键值对的新迭代器对象。 |
970| get(key: K): V | 获取指定key所对应的value。 |
971| getIndexOfKey(key: K): number | 查找key元素第一次出现的下标值,如果没有找到该元素返回-1。 |
972| getIndexOfValue(value: V): number | 查找value元素第一次出现的下标值,如果没有找到该元素返回-1。 |
973| isEmpty(): boolean | 判断该LightWeightMap是否为空。 |
974| getKeyAt(index: number): K | 查找指定下标的元素键值对中key值,否则返回undefined。 |
975| keys(): IterableIterator<K> | 返回包含此映射中包含的键的新迭代器对象。 |
976| setAll(map: LightWeightMap<K, V>): void | 将一个LightWeightMap中的所有元素组添加到另一个lightWeightMap中。 |
977| set(key: K, value: V): Object | 向LightWeightMap中添加一组数据。 |
978| remove(key: K): V | 删除并返回指定key映射的元素。 |
979| removeAt(index: number): boolean | 删除指定下标对应的元素。 |
980| clear(): void | 清除LightWeightMap中的所有元素,并把length置为0。 |
981| setValueAt(index: number, newValue: V): boolean | 替换指定下标对应键值对中的元素。 |
982| forEach(callbackFn: (value?: V, key?: K, map?: LightWeightMap<K, V>) => void,thisArg?: Object): void |
983通过回调函数来遍历实例对象上的元素以及元素对应的下标。 |
984| [Symbol.iterator](): IterableIterator<[K, V]> | 返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 |
985| toString(): String | 将此映射中包含的键值对拼接成字符串,并返回字符串类型。 |
986| getValueAt(index: number): V | 获取指定下标对应键值对中的元素。 |
987| values(): IterableIterator<V> | 返回包含此映射中包含的键值的新迭代器对象。 |
988| add(obj: T): boolean | 向此容器中添加数据。 |
989| addAll(set: LightWeightSet<T>): boolean | 将另一个容器中的所有元素组添加到当前容器中。 |
990| hasAll(set: LightWeightSet<T>): boolean | 判断此容器中是否含有该指定set中的所有元素。 |
991| has(key: T): boolean | 判断此容器中是否含有该指定key。 |
992| equal(obj: Object): boolean | 判断此容器中是否含有该指定obj同类型的对象。 |
993| increaseCapacityTo(minimumCapacity: number): void | 将当前容器扩容至可以容纳指定数量元素。 |
994| getIndexOf(key: T): number | 获取指定key所对应的下标。 |
995| remove(key: T): T | 删除并返回指定key对应的元素。 |
996| removeAt(index: number): boolean | 删除指定下标所对应的元素。 |
997| clear(): void | 清除容器中的所有元素,并把length置为0。 |
998| forEach(callbackFn: (value?: T, key?: T, set?: LightWeightSet<T>) => void,thisArg?: Object): void |
999通过回调函数来遍历LightWeightSet实例对象上的元素以及元素对应的下标。 |
1000| [Symbol.iterator](): IterableIterator<T> | 返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 |
1001| toString(): String | 获取包含容器中所有键和值的字符串。 |
1002| toArray(): Array<T> | 获取包含此容器中所有对象的数组。 |
1003| getValueAt(index: number): T | 获取此容器中指定下标对应的元素。 |
1004| values(): IterableIterator<T> | 返回包含此映射中包含的键值的新迭代器对象。 |
1005| entries(): IterableIterator<[T, T]> | 返回包含此映射中包含的键值对的新迭代器对象。 |
1006| isEmpty(): boolean | 判断该容器是否为空。 |
1007| add(element: T): boolean | 在LinkedList尾部插入元素。 |
1008| insert(index: number, element: T): void | 在长度范围内任意插入指定元素。 |
1009| get(index: number): T | 根据下标获取LinkedList中的元素。 |
1010| addFirst(element: T): void | 在LinkedList头部插入元素。 |
1011| removeFirst(): T | 删除并返回LinkedList的第一个元素。 |
1012| removeLast(): T | 删除并返回LinkedList的最后一个元素。 |
1013| has(element: T): boolean | 判断此LinkedList中是否含有该指定元素。 |
1014| getIndexOf(element: T): number | 返回指定元素第一次出现时的下标值,查找失败返回-1。 |
1015| removeByIndex(index: number): T | 根据元素的下标值查找元素,返回元素后将其删除。 |
1016| remove(element: T): boolean | 删除查找到的第一个指定的元素。 |
1017| removeFirstFound(element: T): boolean | 删除第一次出现的指定元素。 |
1018| removeLastFound(element: T): boolean | 删除最后一次出现的指定元素。 |
1019| getLastIndexOf(element: T): number | 返回指定元素最后一次出现时的下标值,查找失败返回-1。 |
1020| getFirst(): T | 获取LinkedList实例中的第一个元素。 |
1021| getLast(): T | 获取LinkedList实例中的最后一个元素。 |
1022| set(index: number, element: T): T | 将此LinkedList中指定位置的元素替换为指定元素。 |
1023| forEach(callbackFn: (value: T, index?: number, LinkedList?: LinkedList<T>) => void,thisArg?: Object): void |
1024通过回调函数来遍历LinkedList实例对象上的元素以及元素对应的下标。 |
1025| clear(): void | 清除LinkedList中的所有元素,并把length置为0。 |
1026| clone(): LinkedList<T> | 克隆一个与LinkedList相同的实例,并返回克隆后的实例。修改克隆后的实例并不会影响原实例。 |
1027| convertToArray(): Array<T> | 把当前LinkedList实例转换成数组,并返回转换后的数组。 |
1028| [Symbol.iterator](): IterableIterator<T> | 返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 |
1029| add(element: T): boolean | 在List尾部插入元素。 |
1030| insert(element: T, index: number): void | 在长度范围内任意位置插入指定元素。 |
1031| get(index: number): T | 根据下标获取List中的元素。 |
1032| has(element: T): boolean | 判断此List中是否含有该指定元素。 |
1033| getIndexOf(element: T): number | 查找指定元素第一次出现的下标值,查找失败返回-1。 |
1034| removeByIndex(index: number): T | 根据元素的下标值查找元素,返回元素后将其删除。 |
1035| remove(element: T): boolean | 删除查找到的第一个指定的元素。 |
1036| getLastIndexOf(element: T): number | 查找指定元素最后一次出现的下标值,查找失败返回-1。 |
1037| getFirst(): T | 获取List实例中的第一个元素。 |
1038| getLast(): T | 获取List实例中的最后一个元素。 |
1039| set(index: number, element: T): T | 将此 List 中指定位置的元素替换为指定元素。 |
1040| equal(obj: Object): boolean | 比较指定对象与此List是否相等。 |
1041| forEach(callbackFn: (value: T, index?: number, List?: List<T>) => void,thisArg?: Object): void |
1042通过回调函数来遍历List实例对象上的元素以及元素对应的下标。 |
1043| sort(comparator: (firstValue: T, secondValue: T) => number): void | 对List中的元素进行一个排序操作。 |
1044| clear(): void | 清除List中的所有元素,并把length置为0。 |
1045| getSubList(fromIndex: number, toIndex: number): List<T> |
1046根据下标截取List中的一段元素,并返回这一段List实例,包括起始值但不包括终止值。 |
1047| replaceAllElements(callbackFn: (value: T, index?: number, list?: List<T>) => T,thisArg?: Object): void;T |
1048用户操作List中的元素,用操作后的元素替换原元素并返回操作后的元素。 |
1049| convertToArray(): Array<T> | 把当前List实例转换成数组,并返回转换后的数组。 |
1050| isEmpty(): boolean | 判断该List是否为空。 |
1051| [Symbol.iterator](): IterableIterator<T> | 返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 |
1052| add(key: number, value: T): void | 向容器中添加一组数据。 |
1053| clear(): void | 清除容器中的所有元素,并把length置为0。 |
1054| clone(): PlainArray<T> | 克隆一个实例,并返回克隆后的实例。修改克隆后的实例并不会影响原实例。 |
1055| has(key: number): boolean | 判断此容器中是否含有该指定key。 |
1056| get(key: number): T | 获取指定key所对应的value。 |
1057| getIndexOfKey(key: number): number | 查找指定key第一次出现的下标值,如果没有找到该key返回-1。 |
1058| getIndexOfValue(value: T): number | 查找指定value元素第一次出现的下标值,如果没有找到该value元素返回-1。 |
1059| isEmpty(): boolean | 判断该容器是否为空。 |
1060| getKeyAt(index: number): number | 查找指定下标元素键值对中的key值。 |
1061| remove(key: number): T | 删除指定key对应元素。 |
1062| removeAt(index: number): T | 删除指定下标对应的元素。 |
1063| removeRangeFrom(index: number, size: number): number | 删除一定范围内的元素。 |
1064| setValueAt(index: number, value: T): void | 替换容器中指定下标对应键值对中的键值。 |
1065| toString(): String | 获取包含容器中所有键和值的字符串。 |
1066| getValueAt(index: number): T | 查找指定下标元素键值对中的Value值,失败返回undefined。 |
1067| forEach(callbackFn: (value: T, index?: number, PlainArray?: PlainArray<T>) => void,thisArg?: Object): void |
1068通过回调函数来遍历实例对象上的元素以及元素对应的下标。 |
1069| [Symbol.iterator](): IterableIterator<[number, T]> | 返回一个包含key-value键值对的迭代器对象,其中key是number类型。 |
1070| add(element: T): boolean | 在队列尾部插入元素。 |
1071| getFirst(): T | 获取队列的头元素。 |
1072| pop(): T | 删除头元素并返回该删除元素。 |
1073| forEach(callbackFn: (value: T, index?: number, Queue?: Queue<T>) => void, thisArg?: Object): void; |
1074通过回调函数来遍历Queue实例对象上的元素以及元素对应的下标。 |
1075| [Symbol.iterator](): IterableIterator<T> | 返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 |
1076| isEmpty(): boolean | 判断该栈是否为空。 |
1077| peek(): T | 获取并返回栈顶元素。 |
1078| pop(): T | 删除栈顶元素并返回该删除元素。 |
1079| push(item: T): T | 在栈顶插入元素,并返回该元素。 |
1080| locate(element: T): number | 返回指定元素第一次出现时的下标值,查找失败返回-1。 |
1081| forEach(callbackFn: (value: T, index?: number, stack?: Stack<T>) => void,thisArg?: Object): void |
1082通过回调函数来遍历Stack实例对象上的元素以及元素对应的下标。 |
1083| [Symbol.iterator](): IterableIterator<T> | 返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 |
1084| isEmpty(): boolean | 判断该容器是否为空。 |
1085| hasKey(key: K): boolean | 判断此容器中是否含有该指定key。 |
1086| hasValue(value: V): boolean | 判断此容器中是否含有该指定value。 |
1087| get(key: K): V | 获取指定key所对应的value。 |
1088| getFirstKey(): K | 获取容器中排序第一的key。 |
1089| getLastKey(): K | 获取容器中排序最后的key。 |
1090| setAll(map: TreeMap<K, V>): void | 将一个TreeMap中的所有元素组添加到另一个TreeMap中。 |
1091| set(key: K, value: V): Object | 向容器中添加一组数据。 |
1092| remove(key: K): V | 删除指定key对应的元素。 |
1093| clear(): void | 清除容器中的所有元素,并把length置为0。 |
1094| getLowerKey(key: K): K | 获取容器中比传入key排序靠前一位的key。 |
1095| getHigherKey(key: K): K | 获取容器中比传入key排序靠后一位的key。 |
1096| keys(): IterableIterator<K> | 返回包含此映射中包含的键的新迭代器对象。 |
1097| values(): IterableIterator<V> | 返回包含此映射中键值对的新迭代器对象。 |
1098| replace(key: K, newValue: V): boolean | 对容器中一组数据进行更新(替换)。 |
1099| forEach(callbackFn: (value?: V, key?: K, map?: TreeMap<K, V>) => void, thisArg?: Object): void; |
1100通过回调函数来遍历实例对象上的元素以及元素对应的下标。 |
1101| entries(): IterableIterator<[K, V]> | 返回包含此映射中键值对的新迭代器对象。 |
1102| [Symbol.iterator](): IterableIterator<[K, V]> | 返回一个迭代器,迭代器的每一项都是一个JavaScript对象,并返回该对象。 |
1103| isEmpty(): boolean | 判断该容器是否为空。 |
1104| has(value: T): boolean | 判断此容器中是否含有该指定元素。 |
1105| add(value: T): boolean | 向容器中添加一组数据。 |
1106| remove(value: T): boolean | 删除指定的元素。 |
1107| clear(): void | 清除容器中的所有元素,并把length置为0。 |
1108| getFirstValue(): T | 获取容器中排序第一的数据。 |
1109| getLastValue(): T | 获取容器中排序最后的数据。 |
1110| getLowerValue(key: T): T | 获取容器中比传入元素排序靠前一位的元素。 |
1111| getHigherValue(key: T): T | 获取容器中比传入元素排序靠后一位的元素。 |
1112| popFirst(): T | 删除容器中排序最前的数据。 |
1113| popLast(): T | 删除容器中排序最后的数据。 |
1114| forEach(callbackFn: (value?: T, key?: T, set?: TreeSet<T>) => void, thisArg?: Object): void; |
1115通过回调函数来遍历实例对象上的元素以及元素对应的下标。 |
1116| values(): IterableIterator<T> | 返回包含此映射中键值对的新迭代器对象。 |
1117| entries(): IterableIterator<[T, T]> | 返回包含此映射中键值对的新迭代器对象。 |
1118| [Symbol.iterator](): IterableIterator<T> | 返回一个迭代器,迭代器的每一项都是一个JavaScript对象,并返回该对象。 |
1119
1120printf中每个说明符都替换为来自相应参数的转换后的值。 支持的说明符有:
1121| 式样化字符 | 式样要求 |
1122| -------- | -------- |
1123|    %s:  | String 将用于转换除 BigInt、Object 和 -0 之外的所有值。|
1124|    %d:  | Number 将用于转换除 BigInt 和 Symbol 之外的所有值。|
1125|    %i:  | parseInt(value, 10) 用于除 BigInt 和 Symbol 之外的所有值。|
1126|    %f:  | parseFloat(value) 用于除 Symbol 之外的所有值。|
1127|    %j:  | JSON。 如果参数包含循环引用,则替换为字符串 '[Circular]'。|
1128|    %o:  | Object. 具有通用 JavaScript 对象格式的对象的字符串表示形式。类似于具有选项 { showHidden: true, showProxy: true } 的 util.inspect()。这将显示完整的对象,包括不可枚举的属性和代理。|
1129|    %O:  | Object. 具有通用 JavaScript 对象格式的对象的字符串表示形式。类似于没有选项的 util.inspect()。 这将显示完整的对象,但不包括不可枚举的属性和代理。|
1130|    %c:  | 此说明符被忽略,将跳过任何传入的 CSS 。|
1131|    %%:  | 单个百分号 ('%')。 这不消耗待式样化参数。|
1132
1133#### 2.3.2. 使用说明
1134各接口使用方法如下:
1135
11361.readonly encoding()
1137
1138```
1139import util from '@ohos.util'
1140var textEncoder = new util.TextEncoder();
1141var getEncoding = textEncoder.encoding();
1142```
11432.encode()
1144```
1145import util from '@ohos.util'
1146var textEncoder = new util.TextEncoder();
1147var result = textEncoder.encode('abc');
1148```
11493.encodeInto()
1150```
1151import util from '@ohos.util'
1152var textEncoder = new util.TextEncoder();
1153var obj = textEncoder.encodeInto('abc', dest);
1154```
11554.textDecoder()
1156```
1157import util from '@ohos.util'
1158var textDecoder = new util.textDecoder("utf-16be", {fatal : true, ignoreBOM : false});
1159```
11605.readonly encoding()
1161```
1162import util from '@ohos.util'
1163var textDecoder = new util.textDecoder("utf-16be", {fatal : true, ignoreBOM : false});
1164var getEncoding = textDecoder.encoding();
1165```
11666.readonly fatal()
1167```
1168import util from '@ohos.util'
1169var textDecoder = new util.textDecoder("utf-16be", {fatal : true, ignoreBOM : false});
1170var fatalStr = textDecoder.fatal();
1171```
11727.readonly ignoreBOM()
1173```
1174import util from '@ohos.util'
1175var textDecoder = new util.textDecoder("utf-16be", {fatal : true, ignoreBOM : false});
1176var ignoreBom = textDecoder.ignoreBOM();
1177```
11788.decode()
1179```
1180import util from '@ohos.util'
1181var textDecoder = new util.textDecoder("utf-16be", {fatal : true, ignoreBOM : false});
1182var result = textDecoder.decode(input, {stream : true});
1183```
11849.decodeWithStream()
1185```
1186import util from '@ohos.util'
1187var textDecoder = new util.textDecoder("utf-16be", {fatal : true, ignoreBOM : false});
1188var result = textDecoder.decodeWithStream(input, {stream : true});
1189```
119010.printf()
1191```
1192import util from '@ohos.util'
1193var format = "%%%o%%%i%s";
1194var value =  function aa(){};
1195var value1 = 1.5;
1196var value2 = "qwer";
1197var result = util.printf(format,value,value1,value2);
1198```
119911.getErrorString()
1200```
1201import util from '@ohos.util'
1202var errnum = 13;
1203var result = util.getErrorString(errnum);
1204```
120512.callbackWrapper()
1206```
1207import util from '@ohos.util'
1208async function promiseFn() {
1209    return Promise.resolve('value');
1210};
1211var cb = util.callbackWrapper(promiseFn);
1212cb((err, ret) => {
1213    expect(err).strictEqual(null);
1214    expect(ret).strictEqual('value');
1215})
1216```
121713.promiseWrapper()
1218```
1219import util from '@ohos.util'
1220function aysnFun(str1, str2, callback) {
1221    if (typeof str1 === 'string' && typeof str1 === 'string') {
1222        callback(null, str1 + str2);
1223    } else {
1224        callback('type err');
1225    }
1226}
1227let newPromiseObj = util.promiseWrapper(aysnFun)("Hello", 'World');
1228newPromiseObj.then(res => {
1229    expect(res).strictEqual('HelloWorld');
1230})
1231```
123214.encodeSync()
1233```
1234import util from '@ohos.util'
1235var that = new util.Base64();
1236var array = new Uint8Array([115,49,51]);
1237var result = that.encodeSync(array);
1238```
123915.encodeToStringSync()
1240```
1241import util from '@ohos.util'
1242var that = new util.Base64();
1243var array = new Uint8Array([115,49,51]);
1244var result = that.encodeToStringSync(array);
1245```
124616.decodeSync()
1247```
1248import util from '@ohos.util'
1249var that = new util.Base64()
1250var buff = 'czEz';
1251var result = that.decodeSync(buff);
1252
1253```
125417.encode()
1255```
1256import util from '@ohos.util'
1257var that = new util.Base64()
1258var array = new Uint8Array([115,49,51]);
1259await that.encode(array).then(val=>{
1260})
1261done()
1262```
126318.encodeToString()
1264```
1265import util from '@ohos.util'
1266var that = new util.Base64()
1267var array = new Uint8Array([115,49,51]);
1268await that.encodeToString(array).then(val=>{
1269})
1270done()
1271```
127219.decode()
1273```
1274import util from '@ohos.util'
1275var that = new util.Base64()
1276var buff = 'czEz';
1277await that.decode(buff).then(val=>{
1278})
1279done()
1280```
128120.createRationalFromString()
1282```
1283import util from '@ohos.util'
1284var pro = new util.RationalNumber(0, 0);
1285var res = pro.createRationalFromString("-1:2");
1286var result1 = res.valueOf();
1287```
128821.compareTo()
1289```
1290import util from '@ohos.util'
1291var pro = new util.RationalNumber(2, 1);
1292var proc = new util.RationalNumber(3, 4);
1293var res = pro.compareTo(proc);
1294```
129522.equals()
1296```
1297import util from '@ohos.util'
1298var pro = new util.RationalNumber(2, 1);
1299var proc = new util.RationalNumber(3, 4);
1300var res = pro.equals(proc);
1301```
130223.valueOf()
1303```
1304import util from '@ohos.util'
1305var pro = new util.RationalNumber(2, 1);
1306var res = pro.valueOf();
1307```
130824.getCommonDivisor()
1309```
1310import util from '@ohos.util'
1311var pro = new util.RationalNumber(0, 0);
1312var res = pro.getCommonDivisor(4, 8);
1313```
131425.getDenominator()
1315```
1316import util from '@ohos.util'
1317var pro = new util.RationalNumber(2, 1);
1318var res = pro.getDenominator();
1319```
132026.getNumerator()
1321```
1322import util from '@ohos.util'
1323var pro = new util.RationalNumber(-2, 1);
1324var res = pro.getNumerator();
1325```
132627.isFinite()
1327```
1328import util from '@ohos.util'
1329var pro = new util.RationalNumber(-2, 1);
1330var res = pro.isFinite();
1331```
133228.isNaN()
1333```
1334import util from '@ohos.util'
1335var pro = new util.RationalNumber(-2, 1);
1336var res = pro.isNaN();
1337```
133829.isZero()
1339```
1340import util from '@ohos.util'
1341var pro = new util.RationalNumber(-2, 1);
1342var res = pro.isZero();
1343```
134430.toString()
1345```
1346import util from '@ohos.util'
1347var pro = new util.RationalNumber(-2, 1);
1348var res = pro.toString();
1349```
135031.updateCapacity()
1351```
1352import util from '@ohos.util'
1353var pro = new util.LruBuffer();
1354var result = pro.updateCapacity(100);
1355```
135632.toString()
1357```
1358import util from '@ohos.util'
1359var pro = new util.LruBuffer();
1360pro.put(2,10);
1361pro.get(2);
1362pro.remove(20);
1363var result = pro.toString();
1364```
136533.values()
1366```
1367import util from '@ohos.util'
1368var pro = new util.LruBuffer();
1369pro.put(2,10);
1370pro.put(2,"anhu");
1371pro.put("afaf","grfb");
1372var result = pro.values();
1373```
137434.length
1375```
1376import util from '@ohos.util'
1377var pro = new util.LruBuffer();
1378pro.put(2,10);
1379pro.put(1,8);
1380var result = pro.length;
1381```
138235.getCapacity()
1383```
1384import util from '@ohos.util'
1385var pro = new util.LruBuffer();
1386var result = pro.getCapacity();
1387```
138836.clear()
1389```
1390import util from '@ohos.util'
1391var pro = new util.LruBuffer();
1392pro.put(2,10);
1393pro.clear();
1394```
139537.getCreateCount()
1396```
1397import util from '@ohos.util'
1398var pro = new util.LruBuffer();
1399pro.put(1,8);
1400var result = pro.getCreateCount();
1401```
140238.getMissCount()
1403```
1404import util from '@ohos.util'
1405var pro = new util.LruBuffer();
1406pro.put(2,10);
1407pro.get(2)
1408var result = pro.getMissCount();
1409```
141039.getRemovalCount()
1411```
1412
1413import util from '@ohos.util'
1414var pro = new util.LruBuffer();
1415pro.put(2,10);
1416pro.updateCapacity(2);
1417pro.put(50,22);
1418var result = pro.getRemovalCount();
1419
1420```
142140.getMatchCount()
1422```
1423import util from '@ohos.util'
1424var pro = new util.LruBuffer();
1425pro.put(2,10);
1426pro.get(2);
1427var result = pro.getMatchCount();
1428```
142941.getPutCount()
1430```
1431import util from '@ohos.util'
1432var pro = new util.LruBuffer();
1433pro.put(2,10);
1434var result = pro.getPutCount();
1435```
143642.isEmpty()
1437```
1438import util from '@ohos.util'
1439var pro = new util.LruBuffer();
1440pro.put(2,10);
1441var result = pro.isEmpty();
1442```
144343.get()
1444
1445```
1446import util from '@ohos.util'
1447var pro = new util.LruBuffer();
1448pro.put(2,10);
1449var result = pro.get(2);
1450```
145144.put()
1452```
1453import util from '@ohos.util'
1454var pro = new util.LruBuffer();
1455var result = pro.put(2,10);
1456```
145745.keys()
1458```
1459import util from '@ohos.util'
1460var pro = new util.LruBuffer();
1461pro.put(2,10);
1462var result = pro.keys();
1463```
146446.remove()
1465```
1466import util from '@ohos.util'
1467var pro = new util.LruBuffer();
1468pro.put(2,10);
1469var result = pro.remove(20);
1470```
147147.contains()
1472```
1473import util from '@ohos.util'
1474var pro = new util.LruBuffer();
1475pro.put(2,10);
1476var result = pro.contains(20);
1477```
147848.createDefault()
1479```
1480import util from '@ohos.util'
1481var pro = new util.LruBuffer();
1482var result = pro.createDefault(50);
1483```
148449.entries()
1485```
1486import util from '@ohos.util'
1487var pro = new util.LruBuffer();
1488pro.put(2,10);
1489var result = pro.entries();
1490```
149150.\[Symbol.iterator\]()
1492```
1493import util from '@ohos.util'
1494var pro = new util.LruBuffer();
1495pro .put(2,10);
1496var result = pro[symbol.iterator]();
1497```
149851.afterRemoval()
1499```
1500import util from '@ohos.util'
1501var arr = [ ];
1502class ChildLruBuffer extends util.LruBuffer
1503{
1504    constructor()
1505    {
1506        super();
1507    }
1508    static getInstance()
1509    {
1510        if(this.instance ==  null)
1511        {
1512            this.instance = new ChildLruBuffer();
1513        }
1514        return this.instance;
1515    }
1516    afterRemoval(isEvict, key, value, newValue)
1517    {
1518        if (isEvict === false)
1519        {
1520            arr = [key, value, newValue];
1521        }
1522    }
1523}
1524ChildLruBuffer.getInstance().afterRemoval(false,10,30,null)
1525```
1526Scope接口中构造新类,实现compareTo方法。
1527
1528```
1529class Temperature {
1530    constructor(value) {
1531        this._temp = value;
1532    }
1533    compareTo(value) {
1534        return this._temp >= value.getTemp();
1535    }
1536    getTemp() {
1537        return this._temp;
1538    }
1539    toString() {
1540        return this._temp.toString();
1541    }
1542}
1543```
1544
154552.constructor()
1546
1547```
1548var tempLower = new Temperature(30);
1549var tempUpper = new Temperature(40);
1550var range = new Scope(tempLower, tempUpper);
1551```
1552
155353.toString()
1554
1555```
1556var tempLower = new Temperature(30);
1557var tempUpper = new Temperature(40);
1558var range = new Scope(tempLower, tempUpper);
1559var result = range.toString() // => [30,40]
1560```
1561
156254.intersect()
1563
1564```
1565var tempLower = new Temperature(30);
1566var tempUpper = new Temperature(40);
1567var range = new Scope(tempLower, tempUpper);
1568var tempMiDF = new Temperature(35);
1569var tempMidS = new Temperature(39);
1570var rangeFir = new Scope(tempMiDF, tempMidS);
1571var result = range.intersect(rangeFir)  // => [35,39]
1572```
1573
157455.intersect()
1575
1576```
1577var tempLower = new Temperature(30);
1578var tempUpper = new Temperature(40);
1579var tempMiDF = new Temperature(35);
1580var tempMidS = new Temperature(39);
1581var range = new Scope(tempLower, tempUpper);
1582var result = range.intersect(tempMiDF, tempMidS)  // => [35,39]
1583```
1584
158556.getUpper()
1586
1587```
1588var tempLower = new Temperature(30);
1589var tempUpper = new Temperature(40);
1590var range = new Scope(tempLower, tempUpper);
1591var result = range.getUpper() // => 40
1592```
1593
159457.getLower()
1595
1596```
1597var tempLower = new Temperature(30);
1598var tempUpper = new Temperature(40);
1599var range = new Scope(tempLower, tempUpper);
1600var result = range.getLower() // => 30
1601```
1602
160358.expand()
1604
1605```
1606var tempLower = new Temperature(30);
1607var tempUpper = new Temperature(40);
1608var tempMiDF = new Temperature(35);
1609var tempMidS = new Temperature(39);
1610var range = new Scope(tempLower, tempUpper);
1611var result = range.expand(tempMiDF, tempMidS)  // => [30,40]
1612```
1613
161459.expand()
1615
1616```
1617var tempLower = new Temperature(30);
1618var tempUpper = new Temperature(40);
1619var tempMiDF = new Temperature(35);
1620var tempMidS = new Temperature(39);
1621var range = new Scope(tempLower, tempUpper);
1622var rangeFir = new Scope(tempMiDF, tempMidS);
1623var result = range.expand(rangeFir) // => [30,40]
1624```
1625
162660.expand()
1627
1628```
1629var tempLower = new Temperature(30);
1630var tempUpper = new Temperature(40);
1631var tempMiDF = new Temperature(35);
1632var range = new Scope(tempLower, tempUpper);
1633var result = range.expand(tempMiDF)  // => [30,40]
1634```
1635
163661.contains()
1637
1638```
1639var tempLower = new Temperature(30);
1640var tempUpper = new Temperature(40);
1641var tempMiDF = new Temperature(35);
1642var range = new Scope(tempLower, tempUpper);
1643var result = range.contains(tempMiDF) // => true
1644```
1645
164662.contains()
1647
1648```
1649var tempLower = new Temperature(30);
1650var tempUpper = new Temperature(40);
1651var range = new Scope(tempLower, tempUpper);
1652var tempLess = new Temperature(20);
1653var tempMore = new Temperature(45);
1654var rangeSec = new Scope(tempLess, tempMore);
1655var result = range.contains(rangeSec) // => true
1656```
1657
165863.clamp()
1659
1660```
1661var tempLower = new Temperature(30);
1662var tempUpper = new Temperature(40);
1663var tempMiDF = new Temperature(35);
1664var range = new Scope(tempLower, tempUpper);
1665var result = range.clamp(tempMiDF) // => 35
1666```
166764.isAnyArrayBuffer()
1668```
1669import util from '@ohos.util'
1670var proc = new util.Types();
1671var result = proc.isAnyArrayBuffer(new ArrayBuffer([]))
1672```
167365.isArrayBufferView()
1674```
1675import util from '@ohos.util'
1676var proc = new util.Types();
1677var result = proc.isArrayBufferView(new DataView(new ArrayBuffer(16)));
1678```
167966.isArgumentsObject()
1680```
1681import util from '@ohos.util'
1682function foo() {
1683        var result = proc.isArgumentsObject(arguments);
1684    }
1685var f = foo();
1686```
168767.isArrayBuffer()
1688```
1689import util from '@ohos.util'
1690var proc = new util.Types();
1691var result = proc.isArrayBuffer(new ArrayBuffer([]));
1692```
169368.isAsyncFunction()
1694```
1695import util from '@ohos.util'
1696var proc = new util.Types();
1697var result = proc.isAsyncFunction(async function foo() {});
1698```
169969.isBigInt64Array()
1700```
1701import util from '@ohos.util'
1702var proc = new util.Types();
1703var result = proc.isBigInt64Array(new Int16Array([]));
1704```
170570.isBigUint64Array()
1706```
1707import util from '@ohos.util'
1708var proc = new util.Types();
1709var result = proc.isBigUint64Array(new Int16Array([]));
1710```
171171.isBooleanObject()
1712```
1713import util from '@ohos.util'
1714var proc = new util.Types();
1715var result = proc.isBooleanObject(new Boolean(false));
1716```
171772.isBoxedPrimitive()
1718```
1719import util from '@ohos.util'
1720var proc = new util.Types();
1721var result = proc.isBoxedPrimitive(new Boolean(false));
1722```
172373.isDataView()
1724```
1725import util from '@ohos.util'
1726var proc = new util.Types();
1727const ab = new ArrayBuffer(20);
1728var result = proc.isDataView(new DataView(ab));
1729```
173074.isDate()
1731```
1732import util from '@ohos.util'
1733var proc = new util.Types();
1734var result = proc.isDate(new Date());
1735```
173675.isExternal()
1737```
1738import util from '@ohos.util'
1739const data = util.createExternalType();
1740var reult13 = proc.isExternal(data);
1741```
174276.isFloat32Array()
1743```
1744import util from '@ohos.util'
1745var proc = new util.Types();
1746var result = proc.isFloat32Array(new Float32Array([]));
1747```
174877.isFloat64Array()
1749```
1750import util from '@ohos.util'
1751var proc = new util.Types();
1752var result = proc.isFloat64Array(new Float64Array([]));
1753```
175478.isGeneratorFunction()
1755```
1756import util from '@ohos.util'
1757var proc = new util.Types();
1758var result = proc.isGeneratorFunction(function* foo() {});
1759```
176079.isGeneratorObject()
1761```
1762import util from '@ohos.util'
1763var proc = new util.Types();
1764function* foo() {}
1765const generator = foo();
1766var result = proc.isGeneratorObject(generator);
1767```
176880.isInt8Array()
1769```
1770import util from '@ohos.util'
1771var proc = new util.Types();
1772var result = proc.isInt8Array(new Int8Array([]));
1773```
177481.isInt16Array()
1775```
1776import util from '@ohos.util'
1777var proc = new util.Types();
1778var result = proc.isInt16Array(new Int16Array([]));
1779```
178082.isInt32Array()
1781```
1782import util from '@ohos.util'
1783var proc = new util.Types();
1784var result = proc.isInt32Array(new Int32Array([]));
1785```
178683.isMap()
1787```
1788import util from '@ohos.util'
1789var proc = new util.Types();
1790var result = proc.isMap(new Map());
1791```
179284.isMapIterator()
1793```
1794import util from '@ohos.util'
1795var proc = new util.Types();
1796var result = proc.isMapIterator(map.keys());
1797```
179885.isModuleNamespaceObject()
1799```
1800import util from '@ohos.util'
1801var proc = new util.Types();
1802var result = proc.isModuleNamespaceObject(util);
1803```
180486.isNativeError()
1805```
1806import util from '@ohos.util'
1807var proc = new util.Types();
1808var result = proc.isNativeError(new TypeError());
1809```
181087.isNumberObject()
1811```
1812import util from '@ohos.util'
1813var proc = new util.Types();
1814var result = proc.isNumberObject(new Number(0));
1815```
181688.isPromise()
1817```
1818import util from '@ohos.util'
1819var proc = new util.Types();
1820var result = proc.isPromise(Promise.resolve(42));
1821```
182289.isProxy()
1823```
1824import util from '@ohos.util'
1825var proc = new util.Types();
1826const target = {};
1827const proxy = new Proxy(target, {});
1828var result = proc.isProxy(proxy);
1829```
183090.isRegExp()
1831```
1832import util from '@ohos.util'
1833var proc = new util.Types();
1834var result = proc.isRegExp(new RegExp('abc'));
1835```
183691.isSet()
1837```
1838import util from '@ohos.util'
1839var proc = new util.Types();
1840var result = proc.isSet(new Set());
1841```
184292.isSetIterator()
1843```
1844import util from '@ohos.util'
1845var proc = new util.Types();
1846const set = new Set();
1847var result = proc.isSetIterator(set.keys());
1848```
184993.isSharedArrayBuffer()
1850```
1851import util from '@ohos.util'
1852var proc = new util.Types();
1853var result = proc.isSharedArrayBuffer(new ArrayBuffer([]));
1854```
185594.isStringObject()
1856```
1857import util from '@ohos.util'
1858var proc = new util.Types();
1859var result = proc.isStringObject(new String('foo'));
1860```
186195.isSymbolObject()
1862```
1863import util from '@ohos.util'
1864var proc = new util.Types();
1865const symbols = Symbol('foo');
1866var result = proc.isSymbolObject(Object(symbols));
1867```
186896.isTypedArray()
1869```
1870import util from '@ohos.util'
1871var proc = new util.Types();
1872var result = proc.isTypedArray(new Float64Array([]));
1873```
187497.isUint8Array()
1875```
1876import util from '@ohos.util'
1877var proc = new util.Types();
1878var result = proc.isUint8Array(new Uint8Array([]));
1879```
188098.isUint8ClampedArray()
1881```
1882import util from '@ohos.util'
1883var proc = new util.Types();
1884var result = proc.isUint8ClampedArray(new Uint8ClampedArray([]));
1885```
188699.isUint16Array()
1887```
1888import util from '@ohos.util'
1889var proc = new util.Types();
1890var result = proc.isUint16Array(new Uint16Array([]));
1891```
1892100.isUint32Array()
1893```
1894import util from '@ohos.util'
1895var proc = new util.Types();
1896var result = proc.isUint32Array(new Uint32Array([]));
1897```
1898101.isWeakMap()
1899```
1900import util from '@ohos.util'
1901var proc = new util.Types();
1902var result = proc.isWeakMap(new WeakMap());
1903```
1904102.isWeakSet()
1905```
1906import util from '@ohos.util'
1907var proc = new util.Types();
1908var result = proc.isWeakSet(new WeakSet());
1909```
1910103.add()
1911```
1912import ArrayList from "@ohos.util.ArrayList"
1913let arrayList = new ArrayList();
1914let result = arrayList.add(8);
1915```
1916104.insert()
1917```
1918import ArrayList from "@ohos.util.ArrayList"
1919let arrayList = new ArrayList();
1920arrayList.add("四");
1921arrayList.add("三");
1922arrayList.add(1);
1923arrayList.add("a");
1924arrayList.insert(8, 2);
1925```
1926105.add()
1927```
1928import ArrayList from "@ohos.util.ArrayList"
1929let arrayList = new ArrayList();
1930arrayList.add("四");
1931arrayList.add("三");
1932arrayList.add(1);
1933arrayList.add("a");
1934arrayList.insert(8, 2);
1935let result = arrayList.has(8);
1936```
1937106.getIndexOf()
1938```
1939import ArrayList from "@ohos.util.ArrayList"
1940let arrayList = new ArrayList();
1941arrayList.add(1);
1942arrayList.add("三");
1943arrayList.add(1);
1944arrayList.add("a");
1945arrayList.insert(1, 2);
1946let result = arrayList.getIndexOf(1);
1947```
1948107.removeByIndex()
1949```
1950import ArrayList from "@ohos.util.ArrayList"
1951let arrayList = new ArrayList();
1952arrayList.add(1);
1953arrayList.add("三");
1954arrayList.add(1);
1955arrayList.add("a");
1956let result = arrayList.removeByIndex(2);
1957```
1958108.remove()
1959```
1960import ArrayList from "@ohos.util.ArrayList"
1961let arrayList = new ArrayList();
1962arrayList.add("四");
1963arrayList.add("三");
1964arrayList.add(1);
1965arrayList.add("a");
1966let result = arrayList.remove("三");
1967```
1968109.getLastIndexOf()
1969```
1970import ArrayList from "@ohos.util.ArrayList"
1971let arrayList = new ArrayList();
1972arrayList.add("四");
1973arrayList.add("三");
1974arrayList.add(1);
1975arrayList.add("a");
1976arrayList.add(1);
1977arrayList.add("b");
1978let result = arrayList.getLastIndexOf(1);
1979```
1980110.removeByRange()
1981```
1982import ArrayList from "@ohos.util.ArrayList"
1983let arrayList = new ArrayList();
1984arrayList.add("四");
1985arrayList.add("三");
1986arrayList.add("a");
1987arrayList.add("b");
1988arrayList.add("c");
1989arrayList.removeByRange(1, 3);
1990```
1991111.replaceAllElements()
1992```
1993import ArrayList from "@ohos.util.ArrayList"
1994let arrayList = new ArrayList();
1995arrayList.add(4);
1996arrayList.add(3);
1997arrayList.add(1);
1998arrayList.add(2);
1999arrayList.add(14);
2000arrayList.replaceAllElements((item, index) => {
2001    return (item = 2 * item);
2002});
2003```
2004112.forEach()
2005```
2006import ArrayList from "@ohos.util.ArrayList"
2007let arrayList = new ArrayList();
2008arrayList.add(4);
2009arrayList.add(3);
2010arrayList.add(1);
2011arrayList.add(2);
2012arrayList.add(14);
2013let arr = [];
2014arrayList.forEach((item, index) => {
2015    arr.push(item);
2016});
2017```
2018113.sort()
2019```
2020import ArrayList from "@ohos.util.ArrayList"
2021let arrayList = new ArrayList();
2022arrayList.add(4);
2023arrayList.add(3);
2024arrayList.add(1);
2025arrayList.add(2);
2026arrayList.add(14);
2027arrayList.sort((a, b) => a - b);
2028```
2029114.subArrayList()
2030```
2031import ArrayList from "@ohos.util.ArrayList"
2032let arrayList = new ArrayList();
2033arrayList.add(4);
2034arrayList.add(3);
2035arrayList.add(1);
2036arrayList.add(2);
2037arrayList.add(14);
2038let result = arrayList.subArrayList(0, 5);
2039```
2040115.clear()
2041```
2042import ArrayList from "@ohos.util.ArrayList"
2043let arrayList = new ArrayList();
2044arrayList.add(4);
2045arrayList.add(3);
2046arrayList.add(1);
2047arrayList.add(2);
2048arrayList.add(14);
2049arrayList.clear();
2050```
2051116.clone()
2052```
2053import ArrayList from "@ohos.util.ArrayList"
2054let arrayList = new ArrayList();
2055arrayList.add(4);
2056arrayList.add(3);
2057arrayList.add(1);
2058arrayList.add(2);
2059arrayList.add(14);
2060let res = arrayList.clone();
2061```
2062117.getCapacity()
2063```
2064import ArrayList from "@ohos.util.ArrayList"
2065let arrayList = new ArrayList();
2066arrayList.add(4);
2067arrayList.add(3);
2068arrayList.add(1);
2069arrayList.add(2);
2070arrayList.add(14);
2071let result = arrayList.getCapacity();
2072```
2073118.convertToArray()
2074```
2075import ArrayList from "@ohos.util.ArrayList"
2076let arrayList = new ArrayList();
2077arrayList.add(4);
2078arrayList.add(3);
2079arrayList.add(1);
2080arrayList.add(2);
2081arrayList.add(14);
2082let arr = arrayList.convertToArray();
2083```
2084119.isEmpty()
2085```
2086import ArrayList from "@ohos.util.ArrayList"
2087let arrayList = new ArrayList();
2088arrayList.add(4);
2089arrayList.add(3);
2090arrayList.add(1);
2091arrayList.clear();
2092let result = arrayList.isEmpty();
2093```
2094120.increaseCapacityTo()
2095```
2096import ArrayList from "@ohos.util.ArrayList"
2097let arrayList = new ArrayList();
2098arrayList.add(4);
2099arrayList.add(3);
2100arrayList.add(1);
2101arrayList.add(2);
2102arrayList.add(14);
2103arrayList.increaseCapacityTo(-1);
2104```
2105121.trimToCurrentLength()
2106```
2107import ArrayList from "@ohos.util.ArrayList"
2108let arrayList = new ArrayList();
2109arrayList.add(4);
2110arrayList.add(3);
2111arrayList.add(1);
2112arrayList.add(2);
2113arrayList.add(14);
2114arrayList.trimToCurrentLength();
2115```
2116122.insertFront()
2117```
2118import Deque from "@ohos.util.Deque"
2119let deque = new Deque();
2120deque.insertFront("一");
2121```
2122123.insertEnd()
2123```
2124import Deque from "@ohos.util.Deque"
2125let deque = new Deque();
2126let a = ["a", "b", "c"];
2127deque.insertEnd(a);
2128```
2129124.has()
2130```
2131import Deque from "@ohos.util.Deque"
2132let deque = new Deque();
2133deque.insertEnd(6);
2134let result = deque.has(6);
2135```
2136125.getFirst()
2137```
2138import Deque from "@ohos.util.Deque"
2139let deque = new Deque();
2140deque.insertFront("$");
2141let result = deque.getFirst();
2142```
2143126.getLast()
2144```
2145import Deque from "@ohos.util.Deque"
2146let deque = new Deque();
2147deque.insertFront("$");
2148let result = deque.getLast();
2149```
2150127.popFirst()
2151```
2152import Deque from "@ohos.util.Deque"
2153let deque = new Deque();
2154deque.insertFront(6);
2155let result = deque.popFirst();
2156```
2157128.popLast()
2158```
2159import Deque from "@ohos.util.Deque"
2160let deque = new Deque();
2161deque.insertFront(11);
2162let result = deque.popLast();
2163```
2164129.forEach()
2165```
2166import Deque from "@ohos.util.Deque"
2167let deque = new Deque();
2168deque.insertEnd(1);
2169deque.insertEnd(2);
2170deque.insertEnd(3);
2171let arr = [];
2172deque.forEach((item, index) => {
2173    arr.push(item);
2174});
2175```
2176130.isEmpty()
2177```
2178import HashMap from "@ohos.util.HashMap"
2179let hashMap = new HashMap();
2180hashMap.set(1, "A");
2181hashMap.set(2, "B");
2182let result = hashMap.isEmpty();
2183```
2184131.hasKey()
2185```
2186import HashMap from "@ohos.util.HashMap"
2187let hashMap = new HashMap();
2188hashMap.set(1, "A");
2189hashMap.set(2, "B");
2190hashMap.set(3, "C");
2191let result = hashMap.hasKey(3);
2192```
2193132.hasValue()
2194```
2195import HashMap from "@ohos.util.HashMap"
2196let hashMap = new HashMap();
2197hashMap.set(1, "A");
2198hashMap.set(2, "B");
2199hashMap.set(3, "C");
2200let result = hashMap.hasValue("C");
2201```
2202133.get()
2203```
2204import HashMap from "@ohos.util.HashMap"
2205let hashMap = new HashMap();
2206hashMap.set(1, "A");
2207hashMap.set(2, "B");
2208hashMap.set(3, "C");
2209let result = hashMap.get(3);
2210```
2211134.setAll()
2212```
2213import HashMap from "@ohos.util.HashMap"
2214let hashMap = new HashMap();
2215hashMap.set(1, "A");
2216hashMap.set(2, "B");
2217hashMap.set(3, "C");
2218let hashMap1 = new HashMap();
2219hashMap1.set(1, 1);
2220hashMap1.set(2, 2);
2221hashMap.setAll(hashMap1);
2222```
2223135.set()
2224```
2225import HashMap from "@ohos.util.HashMap"
2226let hashMap = new HashMap();
2227hashMap.set(1, "A");
2228hashMap.set(2, "B");
2229hashMap.set(3, "C");
2230```
2231136.remove()
2232```
2233import HashMap from "@ohos.util.HashMap"
2234let hashMap = new HashMap();
2235hashMap.set(1, "A");
2236hashMap.set(2, "B");
2237hashMap.set(3, "C");
2238let result = hashMap.remove(3);
2239```
2240137.clear()
2241```
2242import HashMap from "@ohos.util.HashMap"
2243let hashMap = new HashMap();
2244hashMap.set(1, "A");
2245hashMap.set(2, "B");
2246hashMap.set(3, "C");
2247hashMap.clear();
2248```
2249138.keys()
2250```
2251import HashMap from "@ohos.util.HashMap"
2252let hashMap = new HashMap();
2253hashMap.set(1, "A");
2254hashMap.set(2, "B");
2255hashMap.set(3, "C");
2256hashMap.set(4, "D");
2257hashMap.set(5, "E");
2258let result = hashMap.keys();
2259```
2260139.values()
2261```
2262import HashMap from "@ohos.util.HashMap"
2263let hashMap = new HashMap();
2264hashMap.set(1, "A");
2265hashMap.set(2, "B");
2266hashMap.set(3, "C");
2267hashMap.set(4, "D");
2268hashMap.set(5, "E");
2269let result = hashMap.values();
2270```
2271140.replace()
2272```
2273import HashMap from "@ohos.util.HashMap"
2274let hashMap = new HashMap();
2275hashMap.set(1, "A");
2276hashMap.set(2, "B");
2277hashMap.set(3, "C");
2278hashMap.set(4, "D");
2279hashMap.set(5, "E");
2280let result = hashMap.replace(2, "G");
2281```
2282141.forEach()
2283```
2284import HashMap from "@ohos.util.HashMap"
2285let hashMap = new HashMap();
2286hashMap.set(1, "A");
2287hashMap.set(2, "B");
2288hashMap.set(3, "C");
2289hashMap.set(4, "D");
2290hashMap.set(5, "E");
2291let vals = [];
2292let keys = [];
2293hashMap.forEach((value, key) => {
2294    keys.push(key);
2295    vals.push(value);
2296});
2297```
2298142.entries()
2299```
2300import HashMap from "@ohos.util.HashMap"
2301let hashMap = new HashMap();
2302hashMap.set(1, "A");
2303hashMap.set(2, "B");
2304hashMap.set(3, "C");
2305hashMap.set(4, "D");
2306hashMap.set(5, "E");
2307let result = hashMap.entries();
2308```
2309143.isEmpty()
2310```
2311import HashSet from "@ohos.util.HashSet"
2312let hashSet = new HashSet();
2313hashSet.add(1);
2314hashSet.add(2);
2315let result = hashSet.isEmpty();
2316```
2317144.has()
2318```
2319import HashSet from "@ohos.util.HashSet"
2320let hashSet = new HashSet();
2321hashSet.add(1);
2322hashSet.add(2);
2323let result = hashSet.has(1);
2324```
2325145.add()
2326```
2327import HashSet from "@ohos.util.HashSet"
2328let hashSet = new HashSet();
2329hashSet.add(1);
2330hashSet.add(2);
2331```
2332146.remove()
2333```
2334import HashSet from "@ohos.util.HashSet"
2335let hashSet = new HashSet();
2336hashSet.add(1);
2337hashSet.add(2);
2338let hashSet = hashSet.remove(1);
2339```
2340147.clear()
2341```
2342import HashSet from "@ohos.util.HashSet"
2343let hashSet = new HashSet();
2344hashSet.add(1);
2345hashSet.add(2);
2346hashSet.clear();
2347```
2348148.forEach()
2349```
2350import HashSet from "@ohos.util.HashSet"
2351let hashSet = new HashSet();
2352hashSet.add(1);
2353hashSet.add(2);
2354hashSet.add(3);
2355hashSet.add(4);
2356hashSet.add(5);
2357let arr = [];
2358hashSet.forEach((value, index) => {
2359    arr.push(value);
2360});
2361```
2362149.values()
2363```
2364import HashSet from "@ohos.util.HashSet"
2365let hashSet = new HashSet();
2366hashSet.add("A");
2367hashSet.add("B");
2368hashSet.add("C");
2369hashSet.add("D");
2370hashSet.add("E");
2371let res = hashSet.values();
2372```
2373150.entries()
2374```
2375import HashSet from "@ohos.util.HashSet"
2376let hashSet = new HashSet();
2377hashSet.add(1);
2378hashSet.add(2);
2379hashSet.add(3);
2380let res = hashSet.entries();
2381```
2382151.hasAll()
2383```
2384import LightWeightMap from "@ohos.util.LightWeightMap"
2385let lightWeightMap = new LightWeightMap();
2386lightWeightMap.set("a", "A");
2387lightWeightMap.set("b", "B");
2388lightWeightMap.set("c", "C");
2389lightWeightMap.set("d", "D");
2390lightWeightMap.set("e", "E");
2391let lightWeightMap1 = new LightWeightMap();
2392lightWeightMap1.set("a", "A");
2393lightWeightMap1.set("d", "D");
2394let res = lightWeightMap.hasAll(lightWeightMap1);
2395```
2396152.hasKey()
2397```
2398import LightWeightMap from "@ohos.util.LightWeightMap"
2399let lightWeightMap = new LightWeightMap();
2400lightWeightMap.set("a", "A");
2401lightWeightMap.set("b", "B");
2402lightWeightMap.set("c", "C");
2403let res = lightWeightMap.hasKey("a");
2404```
2405153.hasValue()
2406```
2407import LightWeightMap from "@ohos.util.LightWeightMap"
2408let lightWeightMap = new LightWeightMap();
2409lightWeightMap.set("a", "A");
2410lightWeightMap.set("b", "B");
2411lightWeightMap.set("c", "C");
2412let res = lightWeightMap.hasValue("A");
2413```
2414154.increaseCapacityTo()
2415```
2416import LightWeightMap from "@ohos.util.LightWeightMap"
2417let lightWeightMap = new LightWeightMap();
2418lightWeightMap.set("a", "A");
2419lightWeightMap.set("b", "B");
2420lightWeightMap.set("c", "C");
2421lightWeightMap.increaseCapacityTo(3);
2422```
2423155.entries()
2424```
2425import LightWeightMap from "@ohos.util.LightWeightMap"
2426let lightWeightMap = new LightWeightMap();
2427lightWeightMap.set(1, "A");
2428lightWeightMap.set(2, "B");
2429lightWeightMap.set(3, "C");
2430let res = lightWeightMap.entries();
2431```
2432156.get()
2433```
2434import LightWeightMap from "@ohos.util.LightWeightMap"
2435let lightWeightMap = new LightWeightMap();
2436lightWeightMap.set(1, "A");
2437lightWeightMap.set(2, "B");
2438lightWeightMap.set(3, "C");
2439let res = lightWeightMap.get(1);
2440```
2441157.getIndexOfKey()
2442```
2443import LightWeightMap from "@ohos.util.LightWeightMap"
2444let lightWeightMap = new LightWeightMap();
2445lightWeightMap.set(1, "A");
2446lightWeightMap.set(2, "B");
2447lightWeightMap.set(3, "C");
2448let res = lightWeightMap.getIndexOfKey(2);
2449```
2450158.getIndexOfValue()
2451```
2452import LightWeightMap from "@ohos.util.LightWeightMap"
2453let lightWeightMap = new LightWeightMap();
2454lightWeightMap.set(1, "A");
2455lightWeightMap.set(2, "B");
2456lightWeightMap.set(3, "C");
2457lightWeightMap.set(4, "D");
2458lightWeightMap.set(5, "E");
2459lightWeightMap.setValueAt(4, "F");
2460let res = lightWeightMap.getIndexOfValue("F");
2461```
2462159.isEmpty()
2463```
2464import LightWeightMap from "@ohos.util.LightWeightMap"
2465let lightWeightMap = new LightWeightMap();
2466lightWeightMap.set(1, "A");
2467lightWeightMap.set(2, "B");
2468let res = lightWeightMap.isEmpty();
2469```
2470160.getKeyAt()
2471```
2472import LightWeightMap from "@ohos.util.LightWeightMap"
2473let lightWeightMap = new LightWeightMap();
2474lightWeightMap.set(1, "A");
2475lightWeightMap.set(2, "B");
2476lightWeightMap.set(3, "C");
2477let res = lightWeightMap.getKeyAt(1);
2478```
2479161.keys()
2480```
2481import LightWeightMap from "@ohos.util.LightWeightMap"
2482let lightWeightMap = new LightWeightMap();
2483lightWeightMap.set(1, "A");
2484lightWeightMap.set(2, "B");
2485lightWeightMap.set(3, "C");
2486let res = lightWeightMap.keys();
2487```
2488161.setAll()
2489```
2490import LightWeightMap from "@ohos.util.LightWeightMap"
2491let lightWeightMap = new LightWeightMap();
2492lightWeightMap.set(1, "A");
2493lightWeightMap.set(2, "B");
2494lightWeightMap.set(3, "C");
2495lightWeightMap.set(4, "D");
2496lightWeightMap.set(5, "E");
2497let lightWeightMap1 = new LightWeightMap();
2498lightWeightMap1.set(6, "A");
2499lightWeightMap1.set(7, "B");
2500lightWeightMap.setAll(lightWeightMap1);
2501```
2502162.set()
2503```
2504import LightWeightMap from "@ohos.util.LightWeightMap"
2505let lightWeightMap = new LightWeightMap();
2506lightWeightMap.set(1, "A");
2507lightWeightMap.set(2, "B");
2508```
2509163.remove()
2510```
2511import LightWeightMap from "@ohos.util.LightWeightMap"
2512let lightWeightMap = new LightWeightMap();
2513lightWeightMap.set(1, "A");
2514lightWeightMap.set(2, "B");
2515let res = lightWeightMap.remove(2);
2516```
2517164.removeAt()
2518```
2519import LightWeightMap from "@ohos.util.LightWeightMap"
2520let lightWeightMap = new LightWeightMap();
2521lightWeightMap.set(1, "A");
2522lightWeightMap.set(2, "B");
2523let res = lightWeightMap.removeAt(1);
2524```
2525165.clear()
2526```
2527import LightWeightMap from "@ohos.util.LightWeightMap"
2528let lightWeightMap = new LightWeightMap();
2529lightWeightMap.set(1, "A");
2530lightWeightMap.set(2, "B");
2531lightWeightMap.clear();
2532```
2533166.setValueAt()
2534```
2535import LightWeightMap from "@ohos.util.LightWeightMap"
2536let lightWeightMap = new LightWeightMap();
2537lightWeightMap.set(1, "A");
2538lightWeightMap.set(2, "B");
2539lightWeightMap.setValueAt(0, "a");
2540```
2541167.forEach()
2542```
2543import LightWeightMap from "@ohos.util.LightWeightMap"
2544let lightWeightMap = new LightWeightMap();
2545lightWeightMap.set(1, "A");
2546lightWeightMap.set(2, "B");
2547lightWeightMap.set(3, "C");
2548lightWeightMap.set(4, "D");
2549lightWeightMap.set(5, "E");
2550let arr = [];
2551lightWeightMap.forEach((value, index) => {
2552    arr.push(value);
2553});
2554```
2555168.[Symbol.iterator]()
2556```
2557import LightWeightMap from "@ohos.util.LightWeightMap"
2558let lightWeightMap = new LightWeightMap();
2559lightWeightMap.set(1, "A");
2560lightWeightMap.set(2, "B");
2561lightWeightMap.set(3, "C");
2562lightWeightMap.set(4, "D");
2563lightWeightMap.set(5, "E");
2564let iters = lightWeightMap[Symbol.iterator]();
2565```
2566169.toString()
2567```
2568import LightWeightMap from "@ohos.util.LightWeightMap"
2569let lightWeightMap = new LightWeightMap();
2570lightWeightMap.set(1, "A");
2571lightWeightMap.set(2, "B");
2572lightWeightMap.set(3, "C");
2573let res = lightWeightMap.toString();
2574```
2575170.getValueAt()
2576```
2577import LightWeightMap from "@ohos.util.LightWeightMap"
2578let lightWeightMap = new LightWeightMap();
2579lightWeightMap.set(1, "A");
2580lightWeightMap.set(2, "B");
2581lightWeightMap.set(3, "C");
2582let res = lightWeightMap.getValueAt(1);
2583```
2584171.values()
2585```
2586import LightWeightMap from "@ohos.util.LightWeightMap"
2587let lightWeightMap = new LightWeightMap();
2588lightWeightMap.set(1, "A");
2589lightWeightMap.set(2, "B");
2590lightWeightMap.set(3, "C");
2591let res = lightWeightMap.values();
2592```
2593172.add()
2594```
2595import LightWeightSet from "@ohos.util.LightWeightSet"
2596let lightWeightSet = new LightWeightSet();
2597lightWeightSet.add(1);
2598```
2599173.addAll()
2600```
2601import LightWeightSet from "@ohos.util.LightWeightSet"
2602let lightWeightSet = new LightWeightSet();
2603lightWeightSet.add(1);
2604lightWeightSet.add(2);
2605lightWeightSet.add(3);
2606lightWeightSet.add(4);
2607lightWeightSet.add(5);
2608let lightWeightSet1 = new LightWeightSet();
2609lightWeightSet1.add(6);
2610lightWeightSet1.add(7);
2611let res1 = lightWeightSet.addAll(lightWeightSet1);
2612```
2613174.hasAll()
2614```
2615import LightWeightSet from "@ohos.util.LightWeightSet"
2616let lightWeightSet = new LightWeightSet();
2617lightWeightSet.add("a");
2618lightWeightSet.add("b");
2619lightWeightSet.add("c");
2620lightWeightSet.add("e");
2621let lightWeightSet1 = new LightWeightSet();
2622lightWeightSet1.add("a");
2623lightWeightSet1.add("d");
2624let res = lightWeightSet.hasAll(lightWeightSet1);
2625```
2626175.has()
2627```
2628import LightWeightSet from "@ohos.util.LightWeightSet"
2629let lightWeightSet = new LightWeightSet();
2630lightWeightSet.add("a");
2631lightWeightSet.add("b");
2632lightWeightSet.add("c");
2633let res = lightWeightSet.has("a");
2634```
2635176.equal()
2636```
2637import LightWeightSet from "@ohos.util.LightWeightSet"
2638let lightWeightSet = new LightWeightSet();
2639lightWeightSet.add(1);
2640lightWeightSet.add(2);
2641lightWeightSet.add(3);
2642let obj = [1,2,3];
2643let res = lightWeightSet.equal(obj);
2644```
2645177.increaseCapacityTo()
2646```
2647import LightWeightSet from "@ohos.util.LightWeightSet"
2648let lightWeightSet = new LightWeightSet();
2649lightWeightSet.add(1);
2650lightWeightSet.add(2);
2651lightWeightSet.add(3);
2652let res = lightWeightSet.increaseCapacityTo(20);
2653```
2654178.getIndexOf()
2655```
2656import LightWeightSet from "@ohos.util.LightWeightSet"
2657let lightWeightSet = new LightWeightSet();
2658lightWeightSet.add(1);
2659lightWeightSet.add(2);
2660lightWeightSet.add(3);
2661let res = lightWeightSet.getIndexOf(2);
2662```
2663179.remove()
2664```
2665import LightWeightSet from "@ohos.util.LightWeightSet"
2666let lightWeightSet = new LightWeightSet();
2667lightWeightSet.add(1);
2668lightWeightSet.add(2);
2669lightWeightSet.add(3);
2670let res = lightWeightSet.remove(1);
2671```
2672180.removeAt()
2673```
2674import LightWeightSet from "@ohos.util.LightWeightSet"
2675let lightWeightSet = new LightWeightSet();
2676lightWeightSet.add(1);
2677lightWeightSet.add(2);
2678lightWeightSet.add(3);
2679let res = lightWeightSet.removeAt(1);
2680```
2681181.clear()
2682```
2683import LightWeightSet from "@ohos.util.LightWeightSet"
2684let lightWeightSet = new LightWeightSet();
2685lightWeightSet.add(1);
2686lightWeightSet.add(2);
2687lightWeightSet.add(3);
2688lightWeightSet.clear();
2689```
2690182.forEach()
2691```
2692import LightWeightSet from "@ohos.util.LightWeightSet"
2693let lightWeightSet = new LightWeightSet();
2694lightWeightSet.add(1);
2695lightWeightSet.add(2);
2696lightWeightSet.add(3);
2697lightWeightSet.add(4);
2698lightWeightSet.add(5);
2699let arr = [];
2700lightWeightSet.forEach((value, index) => {
2701    arr.push(value);
2702});
2703```
2704183.[Symbol.iterator]()
2705```
2706import LightWeightSet from "@ohos.util.LightWeightSet"
2707let lightWeightSet = new LightWeightSet();
2708lightWeightSet.add(1);
2709lightWeightSet.add(2);
2710lightWeightSet.add(3);
2711let res = lightWeightSet[Symbol.iterator]();
2712```
2713184.toString()
2714```
2715import LightWeightSet from "@ohos.util.LightWeightSet"
2716let lightWeightSet = new LightWeightSet();
2717lightWeightSet.add(1);
2718lightWeightSet.add(2);
2719lightWeightSet.add(3);
2720let res = lightWeightSet.toString();
2721```
2722185.toArray()
2723```
2724import LightWeightSet from "@ohos.util.LightWeightSet"
2725let lightWeightSet = new LightWeightSet();
2726lightWeightSet.add(1);
2727lightWeightSet.add(2);
2728lightWeightSet.add(3);
2729let res = lightWeightSet.toArray();
2730```
2731186.getValueAt()
2732```
2733import LightWeightSet from "@ohos.util.LightWeightSet"
2734let lightWeightSet = new LightWeightSet();
2735lightWeightSet.add(1);
2736lightWeightSet.add(2);
2737lightWeightSet.add(3);
2738let res = lightWeightSet.getValueAt(1);
2739```
2740187.values()
2741```
2742import LightWeightSet from "@ohos.util.LightWeightSet"
2743let lightWeightSet = new LightWeightSet();
2744lightWeightSet.add(1);
2745lightWeightSet.add(2);
2746lightWeightSet.add(3);
2747let res = lightWeightSet.values();
2748```
2749188.entries()
2750```
2751import LightWeightSet from "@ohos.util.LightWeightSet"
2752let lightWeightSet = new LightWeightSet();
2753lightWeightSet.add(1);
2754lightWeightSet.add(2);
2755lightWeightSet.add(3);
2756let res = lightWeightSet.entries();
2757```
2758189.isEmpty()
2759```
2760import LightWeightSet from "@ohos.util.LightWeightSet"
2761let lightWeightSet = new LightWeightSet();
2762lightWeightSet.add(1);
2763lightWeightSet.add(2);
2764lightWeightSet.add(3);
2765let res = lightWeightSet.isEmpty();
2766```
2767190.add()
2768```
2769import LinkedList from "@ohos.util.LinkedList"
2770let linkedList = new LinkedList();
2771linkedList.add("四");
2772```
2773191.insert()
2774```
2775import LinkedList from "@ohos.util.LinkedList"
2776let linkedList = new LinkedList();
2777linkedList.add("a");
2778linkedList.add("b");
2779linkedList.add("c");
2780linkedList.add("a");
2781linkedList.add("b");
2782let res = linkedList.insert(3, "d");
2783```
2784192.get()
2785```
2786import LinkedList from "@ohos.util.LinkedList"
2787let linkedList = new LinkedList();
2788linkedList.add("a");
2789linkedList.add("b");
2790linkedList.add("c");
2791let res1 = linkedList.get(2);
2792```
2793193.addFirst()
2794```
2795import LinkedList from "@ohos.util.LinkedList"
2796let linkedList = new LinkedList();
2797linkedList.add("a");
2798linkedList.add("b");
2799linkedList.add("c");
2800linkedList.addFirst("e");
2801```
2802194.removeFirst()
2803```
2804import LinkedList from "@ohos.util.LinkedList"
2805let linkedList = new LinkedList();
2806linkedList.add("a");
2807linkedList.add("b");
2808linkedList.add("c");
2809let res = linkedList.removeFirst();
2810```
2811195.removeLast()
2812```
2813import LinkedList from "@ohos.util.LinkedList"
2814let linkedList = new LinkedList();
2815linkedList.add("a");
2816linkedList.add("b");
2817linkedList.add("c");
2818let res = linkedList.removeLast();
2819```
2820196.has()
2821```
2822import LinkedList from "@ohos.util.LinkedList"
2823let linkedList = new LinkedList();
2824linkedList.add("a");
2825linkedList.add("b");
2826linkedList.add("c");
2827let res = linkedList.has(1);
2828```
2829197.getIndexOf()
2830```
2831import LinkedList from "@ohos.util.LinkedList"
2832let linkedList = new LinkedList();
2833linkedList.add("a");
2834linkedList.add("b");
2835linkedList.add("c");
2836let res = linkedList.getIndexOf("b");
2837```
2838198.removeByIndex()
2839```
2840import LinkedList from "@ohos.util.LinkedList"
2841let linkedList = new LinkedList();
2842linkedList.add("a");
2843linkedList.add("b");
2844linkedList.add("c");
2845let res = linkedList.removeByIndex(2);
2846```
2847199.remove()
2848```
2849import LinkedList from "@ohos.util.LinkedList"
2850let linkedList = new LinkedList();
2851linkedList.add("a");
2852linkedList.add("b");
2853linkedList.add("c");
2854let res = linkedList.remove("a");
2855```
2856200.removeFirstFound()
2857```
2858import LinkedList from "@ohos.util.LinkedList"
2859let linkedList = new LinkedList();
2860linkedList.add("a");
2861linkedList.add("b");
2862linkedList.add("c");
2863let res = linkedList.removeFirstFound("b");
2864```
2865201.removeLastFound()
2866```
2867import LinkedList from "@ohos.util.LinkedList"
2868let linkedList = new LinkedList();
2869linkedList.add("a");
2870linkedList.add("b");
2871linkedList.add("c");
2872let res = linkedList.removeLastFound("b");
2873```
2874202.getLastIndexOf()
2875```
2876import LinkedList from "@ohos.util.LinkedList"
2877let linkedList = new LinkedList();
2878linkedList.add("a");
2879linkedList.add("b");
2880linkedList.add("c");
2881linkedList.add("a");
2882linkedList.add("b");
2883linkedList.add("b");
2884let res = linkedList.getLastIndexOf("a");
2885```
2886203.getFirst()
2887```
2888import LinkedList from "@ohos.util.LinkedList"
2889let linkedList = new LinkedList();
2890linkedList.add("a");
2891linkedList.add("b");
2892linkedList.add("c");
2893linkedList.add("a");
2894linkedList.add("b");
2895linkedList.add("b");
2896let res = linkedList.getFirst();
2897```
2898204.getLast()
2899```
2900import LinkedList from "@ohos.util.LinkedList"
2901let linkedList = new LinkedList();
2902linkedList.add("a");
2903linkedList.add("b");
2904linkedList.add("c");
2905linkedList.add("a");
2906linkedList.add("b");
2907linkedList.add("b");
2908let res = linkedList.getLast();
2909```
2910205.set()
2911```
2912import LinkedList from "@ohos.util.LinkedList"
2913let linkedList = new LinkedList();
2914linkedList.add("a");
2915linkedList.add("b");
2916linkedList.add("c");
2917let res = linkedList.set(2, "d");
2918```
2919206.forEach()
2920```
2921import LinkedList from "@ohos.util.LinkedList"
2922let linkedList = new LinkedList();
2923linkedList.add(8);
2924linkedList.add("一");
2925linkedList.add("二");
2926linkedList.add(5);
2927let c = [1, 2, 3, 4];
2928linkedList.add(c);
2929linkedList.add(6);
2930linkedList.add("三");
2931linkedList.add("四");
2932let arr = [];
2933linkedList.forEach((item, index) => {
2934    arr.push(item);
2935});
2936```
2937207.clear()
2938```
2939import LinkedList from "@ohos.util.LinkedList"
2940let linkedList = new LinkedList();
2941linkedList.add("a");
2942linkedList.add("b");
2943linkedList.add("c");
2944let res = linkedList.clear();
2945```
2946208.clone()
2947```
2948import LinkedList from "@ohos.util.LinkedList"
2949let linkedList = new LinkedList();
2950linkedList.add("a");
2951linkedList.add("b");
2952linkedList.add("c");
2953let linkedList1 = linkedList.clone();
2954```
2955209.convertToArray()
2956```
2957import LinkedList from "@ohos.util.LinkedList"
2958let linkedList = new LinkedList();
2959linkedList.add(4);
2960linkedList.add(3);
2961linkedList.add(1);
2962linkedList.add(2);
2963linkedList.add(14);
2964let res = linkedList.convertToArray();
2965```
2966210.[Symbol.iterator]()
2967```
2968import LinkedList from "@ohos.util.LinkedList"
2969let linkedList = new LinkedList();
2970linkedList.add("a");
2971linkedList.add("b");
2972linkedList.add("c");
2973linkedList.addFirst("e");
2974let itr = linkedList[Symbol.iterator]();
2975```
2976211.add()
2977```
2978import List from "@ohos.util.List"
2979let list = new List();
2980list.add("四");
2981```
2982212.insert()
2983```
2984import List from "@ohos.util.List"
2985let list = new List();
2986list.add("a");
2987list.add("b");
2988list.add("c");
2989list.add("a");
2990list.add("b");
2991let res = list.insert("d", 3);
2992```
2993213.get()
2994```
2995import List from "@ohos.util.List"
2996let list = new List();
2997list.add("a");
2998list.add("b");
2999list.add("c");
3000list.add("a");
3001let res = list.set(2, "d");
3002let res1 = list.get(2);
3003```
3004214.has()
3005```
3006import List from "@ohos.util.List"
3007let list = new List();
3008list.add("a");
3009list.add("b");
3010let res = list.has(1);
3011```
3012215.getIndexOf()
3013```
3014import List from "@ohos.util.List"
3015let list = new List();
3016list.add("a");
3017list.add("b");
3018list.add("c");
3019list.add("b");
3020let res = list.getIndexOf("b");
3021```
3022216.removeByIndex()
3023```
3024import List from "@ohos.util.List"
3025let list = new List();
3026list.add("a");
3027list.add("b");
3028list.add("c");
3029list.add("b");
3030let res = list.removeByIndex(2);
3031```
3032217.remove()
3033```
3034import List from "@ohos.util.List"
3035let list = new List();
3036list.add("a");
3037list.add("b");
3038list.add("c");
3039list.add("b");
3040let res = list.remove("a");
3041```
3042218.getLastIndexOf()
3043```
3044import List from "@ohos.util.List"
3045let list = new List();
3046list.add("a");
3047list.add("b");
3048list.add("c");
3049list.add("b");
3050let res = list.getLastIndexOf("F");
3051```
3052219.getFirst()
3053```
3054import List from "@ohos.util.List"
3055let list = new List();
3056list.add("a");
3057list.add("b");
3058list.add("c");
3059list.add("b");
3060let res = list.getFirst();
3061```
3062220.getLast()
3063```
3064import List from "@ohos.util.List"
3065let list = new List();
3066list.add("a");
3067list.add("b");
3068list.add("c");
3069list.add("b");
3070let res = list.getLast();
3071```
3072221.set()
3073```
3074import List from "@ohos.util.List"
3075let list = new List();
3076list.add("a");
3077list.add("b");
3078list.add("c");
3079list.add("a");
3080let res = list.set(2, "d");
3081```
3082222.equal()
3083```
3084import List from "@ohos.util.List"
3085let list = new List();
3086let list1 = new List();
3087let res = list.equal(list1);
3088```
3089223.forEach()
3090```
3091import List from "@ohos.util.List"
3092let list = new List();
3093let num = 0;
3094list.forEach((item, index) => {
3095    num++;
3096});
3097```
3098224.sort()
3099```
3100import List from "@ohos.util.List"
3101let list = new List();
3102list.add(4);
3103list.add(3);
3104list.add(1);
3105list.sort((a, b) => a - b);
3106```
3107225.clear()
3108```
3109import List from "@ohos.util.List"
3110let list = new List();
3111list.add(4);
3112list.add(3);
3113list.add(1);
3114list.clear();
3115```
3116226.getSubList()
3117```
3118import List from "@ohos.util.List"
3119let list = new List();
3120list.add(4);
3121list.add(3);
3122list.add(1);
3123list.add(2);
3124list.add(14);
3125let res = list.getSubList(2, 4);
3126```
3127227.replaceAllElements()
3128```
3129import List from "@ohos.util.List"
3130let list = new List();
3131let num = 0;
3132list.replaceAllElements((item, index) => {
3133    num++;
3134});
3135```
3136228.convertToArray()
3137```
3138import List from "@ohos.util.List"
3139let list = new List();
3140const res = list.convertToArray();
3141```
3142229.isEmpty()
3143```
3144import List from "@ohos.util.List"
3145let list = new List();
3146let res = list.isEmpty();
3147```
3148230.[Symbol.iterator]()
3149```
3150import List from "@ohos.util.List"
3151let list = new List();
3152list.add("a");
3153list.add("b");
3154list.add("c");
3155let itr = list[Symbol.iterator]();
3156```
3157231.add()
3158```
3159import PlainArray from "@ohos.util.PlainArray"
3160let plainArray = new PlainArray();
3161plainArray.add(1, "A");
3162```
3163232.clear()
3164```
3165import PlainArray from "@ohos.util.PlainArray"
3166let plainArray = new PlainArray();
3167plainArray.add(1, "A");
3168plainArray.add(2, "B");
3169plainArray.add(3, "C");
3170plainArray.clear();
3171```
3172233.clone()
3173```
3174import PlainArray from "@ohos.util.PlainArray"
3175let plainArray = new PlainArray();
3176plainArray.add(1, "A");
3177plainArray.add(2, "B");
3178plainArray.add(3, "C");
3179let clonePlainarray = plainArray.clone();
3180```
3181234.has()
3182```
3183import PlainArray from "@ohos.util.PlainArray"
3184let plainArray = new PlainArray();
3185plainArray.add(1, "A");
3186plainArray.add(2, "B");
3187plainArray.add(3, "C");
3188let res = plainArray.has(6);
3189```
3190235.get()
3191```
3192import PlainArray from "@ohos.util.PlainArray"
3193let plainArray = new PlainArray();
3194plainArray.add(1, "A");
3195plainArray.add(2, "B");
3196plainArray.add(3, "C");
3197let value = plainArray.get(2);
3198```
3199236.getIndexOfKey()
3200```
3201import PlainArray from "@ohos.util.PlainArray"
3202let plainArray = new PlainArray();
3203plainArray.add(1, "A");
3204plainArray.add(2, "B");
3205plainArray.add(3, "C");
3206let res = plainArray.getIndexOfKey(9);
3207```
3208237.getIndexOfValue()
3209```
3210import PlainArray from "@ohos.util.PlainArray"
3211let plainArray = new PlainArray();
3212plainArray.add(1, "A");
3213plainArray.add(2, "B");
3214plainArray.add(3, "C");
3215let res = plainArray.getIndexOfValue("Asad");
3216```
3217238.isEmpty()
3218```
3219import PlainArray from "@ohos.util.PlainArray"
3220let plainArray = new PlainArray();
3221plainArray.add(1, "A");
3222plainArray.add(2, "B");
3223plainArray.add(3, "C");
3224let res = plainArray.isEmpty();
3225```
3226239.getKeyAt()
3227```
3228import PlainArray from "@ohos.util.PlainArray"
3229let plainArray = new PlainArray();
3230plainArray.add(1, "A");
3231plainArray.add(2, "B");
3232plainArray.add(3, "C");
3233let res = plainArray.getKeyAt(2);
3234```
3235240.remove()
3236```
3237import PlainArray from "@ohos.util.PlainArray"
3238let plainArray = new PlainArray();
3239plainArray.add(1, "A");
3240plainArray.add(2, "B");
3241plainArray.add(3, "C");
3242let res = plainArray.remove(2);
3243```
3244241.removeAt()
3245```
3246import PlainArray from "@ohos.util.PlainArray"
3247let plainArray = new PlainArray();
3248plainArray.add(1, "A");
3249plainArray.add(2, "B");
3250plainArray.add(3, "C");
3251let res = plainArray.removeAt(2);
3252```
3253242.removeRangeFrom()
3254```
3255import PlainArray from "@ohos.util.PlainArray"
3256let plainArray = new PlainArray();
3257plainArray.add(1, "A");
3258plainArray.add(2, "B");
3259plainArray.add(3, "C");
3260plainArray.removeRangeFrom(2, 2);
3261```
3262243.setValueAt()
3263```
3264import PlainArray from "@ohos.util.PlainArray"
3265let plainArray = new PlainArray();
3266plainArray.add(1, "A");
3267plainArray.add(2, "B");
3268plainArray.add(3, "C");
3269plainArray.setValueAt(2, "V");
3270```
3271244.toString()
3272```
3273import PlainArray from "@ohos.util.PlainArray"
3274let plainArray = new PlainArray();
3275plainArray.add(1, "A");
3276plainArray.add(2, "B");
3277plainArray.add(3, "C");
3278let res1 = plainArray.toString();
3279```
3280245.getValueAt()
3281```
3282import PlainArray from "@ohos.util.PlainArray"
3283let plainArray = new PlainArray();
3284plainArray.add(1, "A");
3285plainArray.add(2, "B");
3286plainArray.add(3, "C");
3287let res = plainArray.getValueAt(2);
3288```
3289246.forEach()
3290```
3291import PlainArray from "@ohos.util.PlainArray"
3292let plainArray = new PlainArray();
3293plainArray.add(1, "A");
3294plainArray.add(2, "B");
3295plainArray.add(3, "C");
3296let arr = [];
3297res.forEach((value, index) => {
3298    arr.push(value);
3299});
3300```
3301247.[Symbol.iterator]()
3302```
3303import PlainArray from "@ohos.util.PlainArray"
3304let plainArray = new PlainArray();
3305plainArray.add(1, "A");
3306plainArray.add(2, "B");
3307plainArray.add(3, "C");
3308let iters = plainArray[Symbol.iterator]();
3309```
3310248.add()
3311```
3312import Queue from "@ohos.util.Queue"
3313let queue = new Queue();
3314queue.add("四");
3315```
3316249.getFirst()
3317```
3318import Queue from "@ohos.util.Queue"
3319let queue = new Queue();
3320queue.add("四");
3321let res = queue.getFirst();
3322```
3323250.pop()
3324```
3325import Queue from "@ohos.util.Queue"
3326let queue = new Queue();
3327queue.add("四");
3328let res = queue.pop();
3329```
3330251.forEach()
3331```
3332import Queue from "@ohos.util.Queue"
3333let queue = new Queue();
3334queue.add(1);
3335queue.add(2);
3336queue.add(3);
3337queue.add(4);
3338queue.forEach((item, index) => {
3339    arr.push(item);
3340});
3341```
3342252.[Symbol.iterator]()
3343```
3344import Queue from "@ohos.util.Queue"
3345let queue = new Queue();
3346queue.add("四");
3347let itr = queue[Symbol.iterator]();
3348```
3349253.isEmpty()
3350```
3351import Stack from "@ohos.util.Stack"
3352let stack = new Stack();
3353stack.push(8);
3354stack.push(5);
3355let res = stack.isEmpty();
3356```
3357254.peek()
3358```
3359import Stack from "@ohos.util.Stack"
3360let stack = new Stack();
3361stack.push(1234);
3362let res = stack.peek();
3363```
3364255.pop()
3365```
3366import Stack from "@ohos.util.Stack"
3367let stack = new Stack();
3368stack.push(1234);
3369let res = stack.pop();
3370```
3371256.push()
3372```
3373import Stack from "@ohos.util.Stack"
3374let stack = new Stack();
3375stack.push(12);
3376```
3377257.locate()
3378```
3379import Stack from "@ohos.util.Stack"
3380let stack = new Stack();
3381stack.push("A");
3382stack.push("B");
3383stack.push(1);
3384let res = stack.locate("A");
3385```
3386258.forEach()
3387```
3388import Stack from "@ohos.util.Stack"
3389let stack = new Stack();
3390stack.push(8);
3391stack.push(5);
3392stack.push(c);
3393stack.push(6);
3394stack.forEach((item, index) => {
3395    arr.push(item);
3396});
3397```
3398259.[Symbol.iterator]()
3399```
3400import Stack from "@ohos.util.Stack"
3401let stack = new Stack();
3402stack.push("A");
3403stack.push("B");
3404stack.push(1);
3405let itr = stack[Symbol.iterator]();
3406```
3407260.isEmpty()
3408```
3409import TreeMap from "@ohos.util.TreeMap"
3410let treeMap = new TreeMap();
3411treeMap.set(0, "a");
3412treeMap.set(1, "b");
3413let res = treeMap.isEmpty();
3414```
3415261.hasKey()
3416```
3417import TreeMap from "@ohos.util.TreeMap"
3418let treeMap = new TreeMap();
3419treeMap.set(0, "a");
3420treeMap.set(1, "b");
3421let res = treeMap.hasKey(1);
3422```
3423262.hasValue()
3424```
3425import TreeMap from "@ohos.util.TreeMap"
3426let treeMap = new TreeMap();
3427treeMap.set(0, "a");
3428treeMap.set(1, "b");
3429let res = treeMap.hasValue("a");
3430```
3431263.get()
3432```
3433import TreeMap from "@ohos.util.TreeMap"
3434let treeMap = new TreeMap();
3435treeMap.set(0, "a");
3436treeMap.set(1, "b");
3437let res = treeMap.get(1);
3438```
3439264.getFirstKey()
3440```
3441import TreeMap from "@ohos.util.TreeMap"
3442let treeMap = new TreeMap();
3443treeMap.set(0, "a");
3444treeMap.set(1, "b");
3445let res = treeMap.getFirstKey();
3446```
3447265.getLastKey()
3448```
3449import TreeMap from "@ohos.util.TreeMap"
3450let treeMap = new TreeMap();
3451treeMap.set(0, "a");
3452treeMap.set(1, "b");
3453let res = treeMap.getLastKey();
3454```
3455266.setAll()
3456```
3457import TreeMap from "@ohos.util.TreeMap"
3458let treeMap = new TreeMap();
3459treeMap.set(0, "a");
3460treeMap.set(1, "b");
3461let treeMap1 = new TreeMap();
3462treeMap1.set(0, "a");
3463treeMap1.set(1, "b");
3464treeMap1.set(2, "c");
3465treeMap.setAll(treeMap1);
3466```
3467267.set()
3468```
3469import TreeMap from "@ohos.util.TreeMap"
3470let treeMap = new TreeMap();
3471treeMap.set(0, "a");
3472treeMap.set(1, "b");
3473```
3474268.remove()
3475```
3476import TreeMap from "@ohos.util.TreeMap"
3477let treeMap = new TreeMap();
3478treeMap.set(0, "a");
3479treeMap.set(1, "b");
3480let res = treeMap.remove(1);
3481```
3482269.clear()
3483```
3484import TreeMap from "@ohos.util.TreeMap"
3485let treeMap = new TreeMap();
3486treeMap.set(0, "a");
3487treeMap.set(1, "b");
3488treeMap.clear();
3489```
3490270.getLowerKey()
3491```
3492import TreeMap from "@ohos.util.TreeMap"
3493let treeMap = new TreeMap();
3494treeMap.set(0, "a");
3495treeMap.set(1, "b");
3496let res = treeMap.getLowerKey(1);
3497```
3498271.getHigherKey()
3499```
3500import TreeMap from "@ohos.util.TreeMap"
3501let treeMap = new TreeMap();
3502treeMap.set(0, "a");
3503treeMap.set(1, "b");
3504let res = treeMap.getHigherKey(1);
3505```
3506272.keys()
3507```
3508import TreeMap from "@ohos.util.TreeMap"
3509let treeMap = new TreeMap();
3510treeMap.set(0, "a");
3511treeMap.set(1, "b");
3512let res = treeMap.keys();
3513```
3514273.values()
3515```
3516import TreeMap from "@ohos.util.TreeMap"
3517let treeMap = new TreeMap();
3518treeMap.set(0, "a");
3519treeMap.set(1, "b");
3520let res = treeMap.values();
3521```
3522274.replace()
3523```
3524import TreeMap from "@ohos.util.TreeMap"
3525let treeMap = new TreeMap();
3526treeMap.set(0, "a");
3527treeMap.set(1, "b");
3528let res = treeMap.replace(1, "B");
3529```
3530275.forEach()
3531```
3532import TreeMap from "@ohos.util.TreeMap"
3533let treeMap = new TreeMap();
3534treeMap.set(0, "a");
3535treeMap.set(1, "b");
3536treeMap.set(2, "c");
3537treeMap.set(3, "d");
3538treeMap.set(4, "g");
3539let arr1 = [];
3540treeMap.forEach((value, key) => {
3541    arr1.push(value);
3542});
3543```
3544276.entries()
3545```
3546import TreeMap from "@ohos.util.TreeMap"
3547let treeMap = new TreeMap();
3548treeMap.set(0, "a");
3549treeMap.set(1, "b");
3550treeMap.set(2, "c");
3551let entries = treeMap.entries();
3552```
3553277.[Symbol.iterator]()
3554```
3555import TreeMap from "@ohos.util.TreeMap"
3556let treeMap = new TreeMap();
3557treeMap.set(0, "a");
3558treeMap.set(1, "b");
3559treeMap.set(2, "c");
3560let iters = treeMap[Symbol.iterator]();
3561```
3562278.isEmpty()
3563```
3564import TreeSet from "@ohos.util.TreeSet"
3565let treeSet = new TreeSet();
3566treeSet.add("a");
3567let res = treeSet.isEmpty();
3568```
3569279.has()
3570```
3571import TreeSet from "@ohos.util.TreeSet"
3572let treeSet = new TreeSet();
3573treeSet.add("a");
3574treeSet.add("b");
3575treeSet.add("c");
3576let res = treeSet.has("c");
3577```
3578280.add()
3579```
3580import TreeSet from "@ohos.util.TreeSet"
3581let treeSet = new TreeSet();
3582treeSet.add("a");
3583treeSet.add("b");
3584treeSet.add("c");
3585```
3586281.remove()
3587```
3588import TreeSet from "@ohos.util.TreeSet"
3589let treeSet = new TreeSet();
3590treeSet.add("a");
3591treeSet.add("b");
3592treeSet.add("c");
3593let res = treeSet.remove("c");
3594```
3595282.clear()
3596```
3597import TreeSet from "@ohos.util.TreeSet"
3598let treeSet = new TreeSet();
3599treeSet.add("a");
3600treeSet.add("b");
3601treeSet.add("c");
3602treeSet.clear();
3603```
3604283.getFirstValue()
3605```
3606import TreeSet from "@ohos.util.TreeSet"
3607let treeSet = new TreeSet();
3608treeSet.add("a");
3609treeSet.add("b");
3610treeSet.add("c");
3611let res = treeSet.getFirstValue();
3612```
3613284.getLastValue()
3614```
3615import TreeSet from "@ohos.util.TreeSet"
3616let treeSet = new TreeSet();
3617treeSet.add("a");
3618treeSet.add("b");
3619treeSet.add("c");
3620let res = treeSet.getLastValue();
3621```
3622285.getLowerValue()
3623```
3624import TreeSet from "@ohos.util.TreeSet"
3625let treeSet = new TreeSet();
3626treeSet.add(0);
3627treeSet.add(1);
3628treeSet.add(2);
3629treeSet.add(3);
3630let res = treeSet.getLowerValue(2);
3631```
3632286.getHigherValue()
3633```
3634import TreeSet from "@ohos.util.TreeSet"
3635let treeSet = new TreeSet();
3636treeSet.add(0);
3637treeSet.add(1);
3638treeSet.add(2);
3639treeSet.add(3);
3640let res = treeSet.getHigherValue(3);
3641```
3642287.popFirst()
3643```
3644import TreeSet from "@ohos.util.TreeSet"
3645let treeSet = new TreeSet();
3646treeSet.add(0);
3647treeSet.add(1);
3648treeSet.add(2);
3649treeSet.add(3);
3650let res = treeSet.popFirst();
3651```
3652288.popLast()
3653```
3654import TreeSet from "@ohos.util.TreeSet"
3655let treeSet = new TreeSet();
3656treeSet.add(0);
3657treeSet.add(1);
3658treeSet.add(2);
3659treeSet.add(3);
3660let res = treeSet.popLast();
3661```
3662289.forEach()
3663```
3664import TreeSet from "@ohos.util.TreeSet"
3665let treeSet = new TreeSet();
3666treeSet.add(0);
3667treeSet.add(1);
3668treeSet.add(2);
3669treeSet.add(3);
3670treeSet.add(4);
3671let arr1 = [];
3672treeSet.forEach((value, key) => {
3673    arr1.push(value);
3674});
3675```
3676290.values()
3677```
3678import TreeSet from "@ohos.util.TreeSet"
3679let treeSet = new TreeSet();
3680treeSet.add("a");
3681treeSet.add("b");
3682treeSet.add("c");
3683let res = treeSet.values();
3684```
3685291.entries()
3686```
3687import TreeSet from "@ohos.util.TreeSet"
3688let treeSet = new TreeSet();
3689treeSet.add("a");
3690treeSet.add("b");
3691treeSet.add("c");
3692let res = treeSet.entries();
3693```
3694292.[Symbol.iterator]()
3695```
3696import TreeSet from "@ohos.util.TreeSet"
3697let treeSet = new TreeSet();
3698treeSet.add("a");
3699treeSet.add("b");
3700treeSet.add("c");
3701let res = treeSet[Symbol.iterator]();
3702```
3703
3704## 3. js_sys_module子模块
3705### 3.1. 简介
3706进程主要用于获取进程的相关ID,获取和修改进程的工作目录,退出和关闭进程。 childprocess 对象可用于创建新进程。 主进程可以获取子进程的标准输入输出,发送信号,关闭子进程。
3707### 3.2. 目录
3708
3709```
3710commomlibrary/ets_utils/js_sys_module/
3711├── Class:PROCESS                   # PROCESS类
3712├── Uid                             # Uid属性
3713├── Gid                             # Gid属性
3714├── EUid                            # EUid属性
3715├── EGid                            # EGid属性
3716├── Groups                          # Groups属性
3717├── Pid                             # Pid属性
3718├── Ppid                            # Ppid属性
3719├── chdir()                         # chdir方法
3720├── uptime()                        # uptime方法
3721├── kill()                          # kill方法
3722├── abort()                         # abort方法
3723├── on()                            # on方法
3724├── tid                             # tid方法
3725├── getStartRealtime()              # getStartRealtime方法
3726├── getAvailableCores()             # getAvailableCores方法
3727├── getPastCputime()                # getPastCputime方法
3728├── isIsolatedProcess()             # isIsolatedProcess方法
3729├── is64Bit()                       # is64Bit方法
3730├── isAppUid()                      # isAppUid方法
3731├── getUidForName()                 # getUidForName方法
3732├── getThreadPriority()             # getThreadPriority方法
3733├── getSystemConfig()               # getSystemConfig方法
3734├── getEnvironmentVar()             # getEnvironmentVar方法
3735├── exit()                          # exit方法
3736├── cwd()                           # cwd方法
3737├── off()                           # off方法
3738├── runCmd()                        # runCmd方法
3739└─── Class:CHILDPROCESS             # class of CHILDPROCESS类
3740    ├── close()                     # close方法
3741    ├── kill()                      # kill方法
3742    ├── getOutput()                 # getOutput方法
3743    ├── getErrorOutput()            # getErrorOutput方法
3744    ├── wait()                      # wait方法
3745    ├── killed                      # killed属性
3746    ├── pid                         # pid属性
3747    ├── ppid                        # ppid属性
3748    └── exitCode                    # exitCode属性
3749```
3750
3751### 3.3. 说明
3752
3753#### 3.3.1. 接口说明
3754| 接口名 | 说明 |
3755| -------- | -------- |
3756| const uid :number | 返回进程的数字用户 ID。 |
3757| const gid :number | 返回进程的数字组 ID。 |
3758| const euid :number | 返回进程的数字有效用户身份。 |
3759| const egid :number | 返回 node.js 进程的数字有效组 ID。 |
3760| const groups :number[] |  返回具有补充组 ID 的数组。 |
3761| const pid :number | 返回进程的PID。 |
3762| const ppid :number |  返回当前进程的父进程的PID。 |
3763| chdir(dir:string) :void | 更改 node.js 进程的当前工作目录。 |
3764| uptime() :number |  返回当前系统已经运行的秒数。 |
3765| Kill(pid:number, signal:number) :boolean | 将信号发送到识别的进程PID,true表示发送成功。 |
3766| abort() :void | 导致 node.js 进程立即退出并生成核心文件。 |
3767| on(type:string ,listener:EventListener) :void | 用于存储用户触发的事件。 |
3768| exit(code:number):void | 导致 node.js 进程立即退出。 |
3769| cwd():string |  返回 node.js 进程的当前工作目录。 |
3770| off(type: string): boolean | 清除用户存储的事件。 True 表示清算成功。 |
3771| runCmd(command: string, options?: { timeout : number, killSignal : number \| string, maxBuffer : number }): ChildProcess |通过runcmd,你可以fork一个新进程来运行一个shell并返回childprocess对象。 第一个参数command指的是要运行的shell,第二个参数options指的是子进程的一些运行参数。 这些参数主要是指 timeout、killsignal 和 maxbuffer。 如果设置了timeout,则子进程会在超时后发送killsignal信号。 Maxbuffer 用于限制可以接收的最大 stdout 和 stderr 大小。 |
3772| wait(): Promise\<number> | 用于等待子进程运行并返回promise对象,其值为子进程的退出码。 |
3773| getOutput(): Promise\<Uint8Array> |  用于获取子进程的标准输出。 |
3774| getErrorOutput(): Promise\<Uint8Array> | 用于获取子进程的标准错误输出。 |
3775| const tid:number | 返回进程的 TID。 |
3776| getStartRealtime() :number | 获取从系统启动到进程启动所经过的实时时间(以毫秒为单位)。 |
3777| getAvailableCores() :number[] | 获取多核设备上当前进程可用的 CPU 内核。 |
3778| getPastCputime() :number | 获取从进程开始到当前时间的 CPU 时间(以毫秒为单位)。 |
3779| isIsolatedProcess(): boolean | 检查进程是否被隔离。 |
3780| is64Bit(): boolean | 检查进程是否在 64 位环境中运行。 |
3781| isAppUid(v:number): boolean | 检查指定的 uid 是否属于特定应用程序。 |
3782| getUidForName(v:string): number | 根据用户名获取用户所属的用户组ID |
3783| getThreadPriority(v:number): number | 根据指定的 TID 获取线程优先级。 |
3784| getSystemConfig(name:number): number | 根据指定的系统配置名称获取系统的配置。 |
3785| getEnvironmentVar(name:string): string | 根据环境变量的名称获取对应的值。 |
3786| close(): void | 用于关闭正在运行的子进程。 |
3787| kill(signal: number \| string): void |  用于向子进程发送信号。 |
3788| readonly killed: boolean | 表示信号是否发送成功,true表示信号发送成功。 |
3789| readonly exitCode: number | 表示子进程的退出代码。 |
3790| readonly pid: number | 表示子进程ID。 |
3791| readonly ppid: number | 代表主进程ID。 |
3792
3793#### 3.3.2. 使用说明
3794
3795各接口使用方法如下:
37961.uid()
3797```
3798uid(){
3799    var res =  Process.uid;
3800}
3801```
38022.gid()
3803```
3804gid(){
3805    var result = Process.gid;
3806}
3807```
38083.euid()
3809```
3810euid(){
3811    var and = Process.euid;
3812}
3813```
38144.egid()
3815```
3816egid(){
3817    var resb = Process.egid;
3818}
3819```
38205.groups()
3821```
3822groups(){
3823    var answer = Process.groups;
3824}
3825```
38266.pid()
3827```
3828pid(){
3829    var result = Process.pid;
3830}
3831```
38327.ppid()
3833```
3834ppid(){
3835    var result = Process.ppid;
3836}
3837```
38388.chdir()
3839```
3840chdir(){
3841    Process.chdir("123456");
3842}
3843```
38449.uptime()
3845```
3846uptime(){
3847    var num = Process.uptime();
3848}
3849```
385010.kill()
3851```
3852kill(){
3853    var ansu = Process.kill(5,23);
3854}
3855```
385611.abort()
3857```
3858abort(){
3859    Process.abort();
3860}
3861```
386212.on()
3863```
3864on(){
3865    function add(num){
3866        var value = num + 5;
3867        return value;
3868    }
3869    Process.on("add",add);
3870}
3871```
387213.exit()
3873```
3874exit(){
3875    Process.exit(15);
3876}
3877```
387814.Cwd()
3879```
3880Cwd(){
3881    var result = Process.cwd();
3882}
3883```
388415.off()
3885
3886```
3887off(){
3888    var result =  Process.off("add");
3889}
3890```
389116.runCmd()
3892```
3893runCmd(){
3894    var child = process.runCmd('echo abc')
3895    // killSignal can be a number or a string
3896    var child = process.runCmd('echo abc;', {killSignal : 'SIGKILL'});
3897    var child = process.runCmd('sleep 5; echo abc;', {timeout : 1, killSignal : 9, maxBuffer : 2})
3898}
3899```
390017.wait()
3901```
3902wait()
3903{
3904    var child = process.runCmd('ls')
3905    var status = child.wait();
3906    status.then(val => {
3907        console.log(val);
3908    })
3909}
3910```
391118.getOutput()
3912```
3913getOutput(){
3914    var child = process.runCmd('echo bcd;');
3915    var res = child.getOutput();
3916    child.wait();
3917    res.then(val => {
3918        console.log(val);
3919    })
3920}
3921```
392219.getErrorOutput()
3923```
3924getErrorOutput(){
3925    var child = process.runCmd('makdir 1.txt'); // execute an error command
3926    var res = child.getErrorOutput();
3927    child.wait();
3928    res.then(val => {
3929        console.log(val);
3930    })
3931}
3932```
393320.close()
3934```
3935close(){
3936    var child =  process.runCmd('ls; sleep 5s;')
3937    var result = child.close()
3938}
3939```
394021.kill()
3941```
3942kill(){
3943    var child =  process.runCmd('ls; sleep 5s;')
3944    var result = child.kill('SIGHUP');
3945    child.wait();
3946    var temp = child.killed;
3947}
3948```
394922.killed
3950```
3951{
3952    var child = process.runCmd('ls; sleep 5;')
3953    child.kill(3);
3954    var killed_ = child.killed;
3955    child.wait();
3956}
3957```
395823.exitCode
3959```
3960{
3961    var child = process.runCmd('ls; sleep 5;')
3962    child.kill(9);
3963    child.wait();
3964    var exitCode_ = child.exitCode;
3965}
3966```
396724.pid
3968```
3969pid
3970{
3971    var child = process.runCmd('ls; sleep 5;')
3972    var pid_ = child.pid;
3973    child.wait();
3974}
3975```
397625.ppid
3977```
3978ppid
3979{
3980    var child = process.runCmd('ls; sleep 5;')
3981    var ppid_ = child.ppid;
3982    child.wait();
3983}
3984```
398526.tid
3986```
3987tid(){
3988    var ansu = Process.tid;
3989}
3990```
399127.isIsolatedProcess()
3992```
3993isIsolatedProcess(){
3994    var ansu = Process.isIsolatedProcess()();
3995}
3996```
399728.isAppUid()
3998```
3999isAppUid(){
4000    var ansu = Process.isAppUid(10000);
4001}
4002```
400329.is64Bit()
4004```
4005is64Bit(){
4006    var ansu = Process.is64Bit();
4007}
4008```
400930.getUidForName()
4010```
4011getUidForName(){
4012    var buf = "root";
4013    var ansu = Process.getUidForName(buf);
4014}
4015```
401631.getEnvironmentVar()
4017```
4018getEnvironmentVar(){
4019    var ansu = Process.getEnvironmentVar('USER');
4020}
4021```
402232.getAvailableCores()
4023```
4024getAvailableCores(){
4025    var ansu = Process.getAvailableCores();
4026}
4027```
402833.getThreadPriority()
4029```
4030getThreadPriority(){
4031    var result = Process.getTid();
4032    var ansu = getThreadPriority(result);
4033}
4034```
403534.getStartRealtime()
4036```
4037getStartRealtime(){
4038    var ansu = Process.getStartRealtime();
4039}
4040```
404135.getPastCputime()
4042```
4043getPastCputime(){
4044    var ansu = Process.getPastCputime();
4045}
4046```
404736.getSystemConfig()
4048```
4049getSystemConfig(){
4050    var _SC_ARG_MAX = 0;
4051    var ansu = Process.getSystemConfig(_SC_ARG_MAX)
4052}
4053```
4054
4055## 4. js_concurrent_module子模块
4056
4057### 4.1. 简介
4058
4059worker能够让js拥有多线程的能力,通过postMessage完成worker线程与宿主线程通信。
4060
4061### 4.2. 接口说明
4062接口实现详见:js_concurrent_module/worker
4063
4064#### 4.2.1. Worker对象描述
4065
4066宿主线程用于与worker线程通信的Object对象。
4067
4068##### 4.2.1.1. 接口
4069
40701.
4071
4072- 接口名
4073
4074|constructor(scriptURL:string, options?:WorkerOptions) | 构造函数 |
4075|---|---|
4076
4077- 使用示例
4078
4079通过判断存放worker.ts的workers目录是否与pages目录同级(以下简称目录同级)和创建项目的模型类别,共有以下四种新建Worker的方式:
4080
4081(1) FA模型: 目录同级
4082```
4083import worker from "@ohos.worker";
4084const workerInstance = new worker.Worker("workers/worker.js", {name:"first worker"});
4085```
4086(2) FA模型: 目录不同级(以workers目录放置pages目录前一级为例)
4087```
4088import worker from "@ohos.worker";
4089const workerInstance = new worker.Worker("../workers/worker.js", {name:"first worker"});
4090```
4091(3)  Stage模型: 目录同级
4092```
4093import worker from "@ohos.worker";
4094const workerInstance = new worker.Worker('entry/ets/workers/worker.ts');
4095```
4096(4) Stage模型: 目录不同级(以workers目录放置pages目录后一级为例)
4097```
4098import worker from "@ohos.worker";
4099const workerInstance = new worker.Worker('entry/ets/pages/workers/worker.ts');
4100```
4101对于Stage模型中scriptURL——"entry/ets/workers/worker.ts"的解释:
4102- entry: 为module.json5中module中name属性的值;
4103- ets: 表明当前工程使用的语言;
4104- worker.ts: 创建worker.ts文件或者worker.js文件都可以。
4105
4106另外,需在工程的模块级build-profile.json5文件的buildOption属性中添加配置信息,主要分为下面两种情况:
4107
4108(1) 目录同级(**此情况不添加亦可**)
4109
4110FA模型:
4111```
4112  "buildOption": {
4113    "sourceOption": {
4114      "workers": [
4115        "./src/main/ets/MainAbility/workers/worker.js"
4116      ]
4117    }
4118  }
4119```
4120Stage模型:
4121```
4122  "buildOption": {
4123    "sourceOption": {
4124      "workers": [
4125        "./src/main/ets/workers/worker.ts"
4126      ]
4127    }
4128  }
4129```
4130(2) 目录不同级(**此情况必须添加**)
4131
4132FA模型:
4133```
4134  "buildOption": {
4135    "sourceOption": {
4136      "workers": [
4137        "./src/main/ets/workers/worker.js"
4138      ]
4139    }
4140  }
4141```
4142Stage模型(workers目录放在pages目录里为例):
4143```
4144  "buildOption": {
4145    "sourceOption": {
4146      "workers": [
4147        "./src/main/ets/pages/workers/worker.ts"
4148      ]
4149    }
4150  }
4151```
41522.
4153
4154- 接口名
4155
4156| postMessage(message:Object, options?:PostMessageOptions)  | 向worker线程发送消息  |
4157|---|---|
4158| postMessage(message:Object, transfer:ArrayBuffer[])  | 向worker线程发送消息  |
4159
4160- 使用示例
4161
4162```
4163// 示例一
4164import worker from "@ohos.worker"
4165const worker = new worker.Worker("workers/worker.js");
4166worker.postMessage("hello world");
4167
4168// 示例二
4169import worker from "@ohos.worker"
4170const worker = new worker.Worker("workers/worker.js");
4171var buffer = new ArrayBuffer(8);
4172worker.postMessage(buffer, [buffer]);
4173```
4174
41753.
4176
4177- 接口名
4178
4179| on(type:string, listener:EventListener)  | 向worker添加一个事件监听  |
4180|---|---|
4181
4182- 使用示例
4183
4184```
4185import worker from "@ohos.worker"
4186const worker = new worker.Worker("workers/worker.js");
4187worker.on("alert", (e)=>{
4188     console.log("worker on...");
4189});
4190```
4191
41924.
4193
4194- 接口名
4195
4196| once(type:string, listener:EventListener)  | 向worker添加一个事件监听, 事件监听只执行一次便自动删除  |
4197|---|---|
4198
4199- 使用示例
4200
4201```
4202import worker from "@ohos.worker"
4203const worker = new worker.Worker("workers/worker.js");
4204worker.once("alert", (e)=>{
4205    console.log("worker once...");
4206});
4207```
4208
42095.
4210
4211- 接口名
4212
4213| off(type:string, listener?:EventListener)  | 删除worker的事件监听  |
4214|---|---|
4215
4216- 使用示例
4217
4218```
4219import worker from "@ohos.worker"
4220const worker = new worker.Worker("workers/worker.js");
4221worker.off("alert");
4222```
4223
42246.
4225
4226- 接口名
4227
4228| terminate()  | 关闭worker线程,终止worker发送消息  |
4229|---|---|
4230
4231- 使用示例
4232
4233```
4234import worker from "@ohos.worker"
4235const worker = new worker.Worker("workers/worker.js");
4236worker.terminate();
4237```
4238
42397.
4240
4241- 接口名
4242
4243| removeEventListener(type:string, listener?:EventListener)  | 删除worker的事件监听  |
4244|---|---|
4245
4246- 使用示例
4247
4248```
4249import worker from "@ohos.worker"
4250const worker = new worker.Worker("workers/worker.js");
4251worker.removeEventListener("alert", (e)=>{
4252    console.log("worker removeEventListener...");
4253});
4254```
4255
42568.
4257
4258- 接口名
4259
4260| dispatchEvent(event: Event)  | 分发定义在worker的事件  |
4261|---|---|
4262
4263- 使用示例
4264
4265```
4266import worker from "@ohos.worker"
4267const worker = new worker.Worker("workers/worker.js");
4268worker.dispatchEvent({type:"alert"});
4269```
4270
42719.
4272
4273- 接口名
4274
4275| removeAllListener()  | 删除worker的所有事件监听  |
4276|---|---|
4277
4278- 使用示例
4279
4280```
4281import worker from "@ohos.worker"
4282const worker = new worker.Worker("workers/worker.js");
4283worker.removeAllListener();
4284```
4285
4286##### 4.2.1.2. 属性
4287
42881.
4289
4290- 属性名
4291
4292| onexit?:(code:number)=>void  | worker退出时被调用的事件处理程序,处理程序在宿主线程中执行  |
4293|---|---|
4294
4295- 使用示例
4296
4297```
4298import worker from "@ohos.worker"
4299const worker = new worker.Worker("workers/worker.js");
4300worker.onexit = function(e) {
4301    console.log("onexit...");
4302}
4303```
4304
43052.
4306
4307- 属性名
4308
4309| onerror?:(ev:ErrorEvent)=>void  | worker在执行过程中发生异常被调用的事件处理程序,处理程序在宿主线程中执行  |
4310|---|---|
4311
4312- 使用示例
4313
4314```
4315import worker from "@ohos.worker"
4316const worker = new worker.Worker("workers/worker.js");
4317worker.onerror = function(e) {
4318    console.log("onerror...");
4319}
4320```
4321
43223.
4323
4324- 属性名
4325
4326| onmessage?:(ev:MessageEvent)=>void  | 宿主线程收到来自其创建的worker通过parentPort.postMessage接口发送的消息时被调用的事件处理程序, 处理程序在宿主线程中执行 |
4327|---|---|
4328
4329- 使用示例
4330
4331```
4332import worker from "@ohos.worker"
4333const worker = new worker.Worker("workers/worker.js");
4334worker.onmessage = function(e) {
4335    console.log("onmessage...");
4336}
4337```
4338
43394.
4340
4341- 属性名
4342
4343| onmessageerror?:(event:MessageEvent)=>void  | worker对象接收到一条无法序列化的消息时被调用的事件处理程序, 处理程序在宿主线程中执行 |
4344|---|---|
4345
4346- 使用示例
4347
4348```
4349import worker from "@ohos.worker"
4350const worker = new worker.Worker("workers/worker.js");
4351worker.onmessageerror = function(e) {
4352    console.log("onmessageerror...");
4353}
4354```
4355
4356#### 4.2.2. parentPort对象描述
4357
4358worker线程用于与宿主线程通信的Object对象。
4359
4360##### 4.2.2.1. 接口
4361
43621.
4363
4364- 接口名
4365
4366| postMessage(message:Object, options?:PostMessageOptions)  | 向宿主线程发送消息 |
4367|---|---|
4368| postMessage(message:Object, transfer:ArrayBuffer[])  | 向宿主线程发送消息  |
4369
4370- 使用示例
4371
4372```
4373// main.js
4374import worker from "@ohos.worker"
4375const worker = new worker.Worker("workers/worker.js");
4376worker.postMessage("hello world");
4377
4378// worker.js
4379import worker from "@ohos.worker"
4380const parentPort = worker.parentPort;
4381parentPort.onmessage = function(e) {
4382    parentPort.postMessage("hello world from worker.js");
4383}
4384```
4385
43862.
4387
4388- 接口名
4389
4390| close()  | 关闭worker线程,终止worker接收消息  |
4391|---|---|
4392
4393- 使用示例
4394
4395```
4396// main.js
4397import worker from "@ohos.worker"
4398const worker = new worker.Worker("workers/worker.js");
4399worker.postMessage("hello world");
4400
4401// worker.js
4402import worker from "@ohos.worker"
4403const parentPort = worker.parentPort;
4404parentPort.onmessage = function(e) {
4405    parentPort.close();
4406}
4407```
4408
4409##### 4.2.2.2. 属性
4410
44111.
4412
4413- 属性名
4414
4415| onmessage?:(event:MessageEvent)=>void  | 宿主线程收到来自其创建的worker通过worker.postMessage接口发送的消息时被调用的事件处理程序,处理程序在worker线程中执行  |
4416|---|---|
4417
4418- 使用示例
4419
4420```
4421// main.js
4422import worker from "@ohos.worker"
4423const worker = new worker.Worker("workers/worker.js");
4424worker.postMessage("hello world");
4425
4426// worker.js
4427import worker from "@ohos.worker"
4428const parentPort = worker.parentPort;
4429parentPort.onmessage = function(e) {
4430    console.log("receive main.js message");
4431}
4432```
4433
44342.
4435
4436- 属性名
4437
4438| onerror?:(ev: ErrorEvent)=>void  | worker在执行过程中发生异常被调用的事件处理程序,处理程序在worker线程中执行  |
4439|---|---|
4440
4441- 使用示例
4442
4443```
4444// main.js
4445import worker from "@ohos.worker"
4446const worker = new worker.Worker("workers/worker.js");
4447worker.postMessage("hello world");
4448
4449// worker.js
4450import worker from "@ohos.worker"
4451const parentPort = worker.parentPort;
4452parentPort.onerror = function(e) {
4453    console.log("onerror...");
4454}
4455
4456```
4457
44583.
4459
4460- 属性名
4461
4462| onmessageerror?:(event: MessageEvent)=>void  | worker对象接收到一条无法被反序列化的消息时被调用的事件处理程序, 处理程序在worker线程中执行  |
4463|---|---|
4464
4465- 使用示例
4466
4467```
4468// main.js
4469import worker from "@ohos.worker"
4470const worker = new worker.Worker("workers/worker.js");
4471worker.postMessage("hello world");
4472
4473// worker.js
4474import worker from "@ohos.worker"
4475const parentPort = worker.parentPort;
4476parentPort.onmessageerror = function(e) {
4477    console.log("onmessageerror...");
4478}
4479```
4480
4481### 4.3. 涉及仓
4482
4483[arkcompiler_ets_runtime](https://gitee.com/openharmony/arkcompiler_ets_runtime/blob/master/README_zh.md)
4484[arkui_ace_engine](https://gitee.com/openharmony/arkui_ace_engine/blob/master/README_zh.md)
4485[arkui_napi](https://gitee.com/openharmony/arkui_napi/blob/master/README_zh.md)
4486
4487
4488# 相关仓
4489
4490[ets_utils子系统](https://gitee.com/openharmony/commonlibrary_ets_utils/blob/master/README.md)
4491
4492# 许可证
4493
4494js_api_module子模块在[Mozilla许可证](https://www.mozilla.org/en-US/MPL/)下可用,有关完整的许可证文本,请参见[许可证](https://gitee.com/openharmony/commonlibrary_ets_utils/blob/master/js_api_module/mozilla_docs.txt)4495
4496js_util_module子模块在[Mozilla许可证](https://www.mozilla.org/en-US/MPL/)下可用,有关完整的许可证文本,请参见[许可证](https://gitee.com/openharmony/commonlibrary_ets_utils/blob/master/js_util_module/mozilla_docs.txt)4497
4498js_concurrent_module子模块在[Mozilla许可证](https://www.mozilla.org/en-US/MPL/)下可用,有关完整的许可证文本,请参见[许可证](https://gitee.com/openharmony/commonlibrary_ets_utils/blob/master/js_concurrent_module/mozilla_docs.txt)4499