From ce33b186e98f1a6641d72ae8762983284421bcf9 Mon Sep 17 00:00:00 2001 From: jiangkai43 Date: Tue, 5 Sep 2023 20:25:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=AC=E5=85=B1=E5=BA=93=E7=A4=BA=E4=BE=8B?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E9=80=82=E9=85=8DArkTs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: jiangkai43 --- .../reference/apis/js-apis-convertxml.md | 54 +-- .../reference/apis/js-apis-uri.md | 22 +- .../reference/apis/js-apis-url.md | 128 ++++--- .../reference/apis/js-apis-xml.md | 345 ++++++++---------- 4 files changed, 259 insertions(+), 290 deletions(-) diff --git a/zh-cn/application-dev/reference/apis/js-apis-convertxml.md b/zh-cn/application-dev/reference/apis/js-apis-convertxml.md index be52a524fc..3f4c3ecae4 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-convertxml.md +++ b/zh-cn/application-dev/reference/apis/js-apis-convertxml.md @@ -9,7 +9,7 @@ ## 导入模块 -```js +```ts import convertxml from '@ohos.convertxml'; ``` @@ -46,27 +46,27 @@ convertToJSObject(xml: string, options?: ConvertOptions) : Object **示例:** -```js +```ts try { - let xml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; - let conv = new convertxml.ConvertXML() - let options = { - trim: false, declarationKey: "_declaration", - instructionKey: "_instruction", attributesKey: "_attributes", - textKey: "_text", cdataKey: "_cdata", doctypeKey: "_doctype", - commentKey: "_comment", parentKey: "_parent", typeKey: "_type", - nameKey: "_name", elementsKey: "_elements" - } - let result = JSON.stringify(conv.convertToJSObject(xml, options)); - console.log(result); + let xml = + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; + let conv = new convertxml.ConvertXML() + let options: convertxml.ConvertOptions = { + trim: false, declarationKey: "_declaration", + instructionKey: "_instruction", attributesKey: "_attributes", + textKey: "_text", cdataKey: "_cdata", doctypeKey: "_doctype", + commentKey: "_comment", parentKey: "_parent", typeKey: "_type", + nameKey: "_name", elementsKey: "_elements" + } + let result = JSON.stringify(conv.convertToJSObject(xml, options)); + console.log(result); } catch (e) { - console.log(e.toString()); + console.log(e.toString()); } // 输出(宽泛型) // {"_declaration":{"_attributes":{"version":"1.0","encoding":"utf-8"}},"_elements":[{"_type":"element","_name":"note","_attributes":{"importance":"high","logged":"true"},"_elements":[{"_type":"element","_name":"title","_elements":[{"_type":"text","_text":"Happy"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Work"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Play"}]}]}]} @@ -99,20 +99,20 @@ convert(xml: string, options?: ConvertOptions) : Object **示例:** -```js +```ts let xml = - '' + + '' + '' + ' Happy' + ' Work' + ' Play' + ''; let conv = new convertxml.ConvertXML(); -let options = {trim : false, declarationKey:"_declaration", - instructionKey : "_instruction", attributesKey : "_attributes", - textKey : "_text", cdataKey:"_cdata", doctypeKey : "_doctype", - commentKey : "_comment", parentKey : "_parent", typeKey : "_type", - nameKey : "_name", elementsKey : "_elements"} +let options: convertxml.ConvertOptions = {trim : false, declarationKey:"_declaration", + instructionKey : "_instruction", attributesKey : "_attributes", + textKey : "_text", cdataKey:"_cdata", doctypeKey : "_doctype", + commentKey : "_comment", parentKey : "_parent", typeKey : "_type", + nameKey : "_name", elementsKey : "_elements"} let result = JSON.stringify(conv.convert(xml, options)); console.log(result); // 输出(宽泛型) diff --git a/zh-cn/application-dev/reference/apis/js-apis-uri.md b/zh-cn/application-dev/reference/apis/js-apis-uri.md index c3f14431c3..c034d4ea47 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-uri.md +++ b/zh-cn/application-dev/reference/apis/js-apis-uri.md @@ -7,7 +7,7 @@ ## 导入模块 -```js +```ts import uri from '@ohos.uri' ``` @@ -47,7 +47,7 @@ import uri from '@ohos.uri' **URI示例:** -```js +```ts const result1 = new uri.URI("ftp://ftp.aaa.bbb.ccc/dddd/eee.txt"); console.log(result1.host) // ftp.aaa.bbb.ccc console.log(result1.fragment) // null @@ -118,12 +118,12 @@ constructor是URI的构造函数。 **示例:** -```js +```ts let mm = 'https://username:password@host:8080/directory/file?foo=1&bar=2#fragment'; -new uri.URI(mm); // Output 'https://username:password@host:8080/directory/file?foo=1&bar=2#fragment'; +new uri.URI(mm); ``` -```js -new uri.URI('https://username:password@host:8080'); // Output 'https://username:password@host:8080'; +```ts +new uri.URI('https://username:password@host:8080'); ``` @@ -143,7 +143,7 @@ toString(): string **示例:** -```js +```ts const result = new uri.URI('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); let result1 = result.toString(); ``` @@ -175,7 +175,7 @@ equals(other: URI): boolean **示例:** -```js +```ts const uriInstance = new uri.URI('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); const uriInstance1 = new uri.URI('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); uriInstance.equals(uriInstance1); @@ -202,7 +202,7 @@ equalsTo(other: URI): boolean **示例:** -```js +```ts const uriInstance = new uri.URI('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); const uriInstance1 = new uri.URI('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); let result = uriInstance.equalsTo(uriInstance1); @@ -224,7 +224,7 @@ checkIsAbsolute(): boolean **示例:** -```js +```ts const uriInstance = new uri.URI('https://username:password@www.qwer.com:8080?query=pppppp'); console.log(`${uriInstance.checkIsAbsolute()}`); // true const uriInstance1 = new uri.URI('xxx.com/suppliers.htm'); @@ -248,7 +248,7 @@ normalize(): URI **示例:** -```js +```ts const uriInstance = new uri.URI('https://username:password@www.qwer.com:8080/path/path1/../path2/./path3?query=pppppp'); console.log(uriInstance.path); // /path/path1/../path2/./path3 let uriInstance1 = uriInstance.normalize(); diff --git a/zh-cn/application-dev/reference/apis/js-apis-url.md b/zh-cn/application-dev/reference/apis/js-apis-url.md index 6765de6b25..1284c3a056 100755 --- a/zh-cn/application-dev/reference/apis/js-apis-url.md +++ b/zh-cn/application-dev/reference/apis/js-apis-url.md @@ -27,7 +27,7 @@ URLParams的构造函数。 **示例:** -```js +```ts let objectParams = new Url.URLParams([ ['user1', 'abc1'], ['query2', 'first2'], ['query3', 'second3'] ]); let objectParams1 = new Url.URLParams({"fod" : '1' , "bard" : '2'}); let objectParams2 = new Url.URLParams('?fod=1&bard=2'); @@ -53,7 +53,7 @@ append(name: string, value: string): void **示例:** -```js +```ts let urlObject = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLParams(urlObject.search.slice(1)); paramsObject.append('fod', '3'); @@ -76,7 +76,7 @@ delete(name: string): void **示例:** -```js +```ts let urlObject = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLParams(urlObject.search.slice(1)); paramsObject.delete('fod'); @@ -105,7 +105,7 @@ getAll(name: string): string[] **示例:** -```js +```ts let urlObject = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); let params = new Url.URLParams(urlObject.search.slice(1)); params.append('fod', '3'); // Add a second value for the fod parameter. @@ -129,10 +129,12 @@ entries(): IterableIterator<[string, string]> **示例:** -```js -let searchParamsObject = new Url.URLParams("keyName1=valueName1&keyName2=valueName2"); -for (var pair of searchParamsObject.entries()) { // Show keyName/valueName pairs - console.log(pair[0]+ ', '+ pair[1]); +```ts +let searchParamsObject = new Url.URLParams("keyName1=valueName1&keyName2=valueName2"); +let pair:Iterable = searchParamsObject.entries(); +let arrayValue = Array.from(pair); +for (let pair of arrayValue) { // Show keyName/valueName pairs + console.log(pair[0]+ ', '+ pair[1]); } ``` @@ -162,7 +164,7 @@ forEach(callbackFn: (value: string, key: string, searchParams: this) => void, th **示例:** -```js +```ts const myURLObject = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); myURLObject.params.forEach((value, name, searchParams) => { console.log(name, value, myURLObject.params === searchParams); @@ -193,10 +195,10 @@ get(name: string): string | null **示例:** -```js +```ts let paramsObject = new Url.URLParams('name=Jonathan&age=18'); let name = paramsObject.get("name"); // is the string "Jonathan" -let age = parseInt(paramsObject.get("age"), 10); // is the number 18 +let age = paramsObject.get("age"); // is the string "18" ``` @@ -222,7 +224,7 @@ has(name: string): boolean **示例:** -```js +```ts let urlObject = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLParams(urlObject.search.slice(1)); let result = paramsObject.has('bard'); @@ -246,7 +248,7 @@ set(name: string, value: string): void **示例:** -```js +```ts let urlObject = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLParams(urlObject.search.slice(1)); paramsObject.set('baz', '3'); // Add a third parameter. @@ -263,10 +265,10 @@ sort(): void **示例:** -```js +```ts let searchParamsObject = new Url.URLParams("c=3&a=9&b=4&d=2"); // Create a test URLSearchParams object searchParamsObject.sort(); // Sort the key/value pairs -console.log(searchParamsObject.toString()); // Display the sorted query string // Output a=9&b=2&c=3&d=4 +console.log(searchParamsObject.toString()); // Display the sorted query string // Output a=9&b=4&c=3&d=2 ``` @@ -286,10 +288,11 @@ keys(): IterableIterator<string> **示例:** -```js +```ts let searchParamsObject = new Url.URLParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing -for (var key of searchParamsObject .keys()) { // Output key-value pairs - console.log(key); +let keys = Array.from(searchParamsObject.keys()); +for (let key of keys) { // Output key-value pairs + console.log(key); } ``` @@ -310,10 +313,11 @@ values(): IterableIterator<string> **示例:** -```js +```ts let searchParams = new Url.URLParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing -for (var value of searchParams.values()) { - console.log(value); +let values = Array.from(searchParams.values()); +for (let value of values) { + console.log(value); } ``` @@ -334,11 +338,13 @@ for (var value of searchParams.values()) { **示例:** -```js +```ts const paramsObject = new Url.URLParams('fod=bay&edg=bap'); -for (const [name, value] of paramsObject[Symbol.iterator]()) { - console.log(name, value); -} +let iter: Iterable = paramsObject[Symbol.iterator](); +let pairs = Array.from(iter); +for (let pair of pairs) { + console.log(pair[0] + ', ' + pair[1]); +} ``` @@ -358,7 +364,7 @@ toString(): string **示例:** -```js +```ts let url = Url.URL.parseURL('https://developer.exampleUrl/?fod=1&bard=2'); let params = new Url.URLParams(url.search.slice(1)); params.append('fod', '3'); @@ -408,7 +414,7 @@ URL的构造函数。 **示例:** -```js +```ts let mm = 'https://username:password@host:8080'; let a = new Url.URL("/", mm); // Output 'https://username:password@host:8080/'; let b = new Url.URL(mm); // Output 'https://username:password@host:8080/'; @@ -457,7 +463,7 @@ URL静态成员函数。 **示例:** -```js +```ts let mm = 'https://username:password@host:8080'; let url = Url.URL.parseURL(mm); let result = url.toString(); // Output 'https://username:password@host:8080/' @@ -479,7 +485,7 @@ toString(): string **示例:** -```js +```ts const url = Url.URL.parseURL('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); let result = url.toString(); ``` @@ -499,7 +505,7 @@ toJSON(): string | string | 用于返回网址的字符串序列化。 | **示例:** -```js +```ts const url = Url.URL.parseURL('https://username:password@host:8080/directory/file?query=pppppp#qwer=da'); let result = url.toJSON(); ``` @@ -526,7 +532,7 @@ URLSearchParams的构造函数。 **示例:** -```js +```ts let objectParams = new Url.URLSearchParams([ ['user1', 'abc1'], ['query2', 'first2'], ['query3', 'second3'] ]); let objectParams1 = new Url.URLSearchParams({"fod" : '1' , "bard" : '2'}); let objectParams2 = new Url.URLSearchParams('?fod=1&bard=2'); @@ -555,7 +561,7 @@ append(name: string, value: string): void **示例:** -```js +```ts let urlObject = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLSearchParams(urlObject.search.slice(1)); paramsObject.append('fod', '3'); @@ -581,7 +587,7 @@ delete(name: string): void **示例:** -```js +```ts let urlObject = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsobject = new Url.URLSearchParams(urlObject.search.slice(1)); paramsobject.delete('fod'); @@ -613,7 +619,7 @@ getAll(name: string): string[] **示例:** -```js +```ts let urlObject = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); let params = new Url.URLSearchParams(urlObject.search.slice(1)); params.append('fod', '3'); // Add a second value for the fod parameter. @@ -640,10 +646,12 @@ entries(): IterableIterator<[string, string]> **示例:** -```js -let searchParamsObject = new Url.URLSearchParams("keyName1=valueName1&keyName2=valueName2"); -for (var pair of searchParamsObject.entries()) { // Show keyName/valueName pairs - console.log(pair[0]+ ', '+ pair[1]); +```ts +let searchParamsObject = new Url.URLSearchParams("keyName1=valueName1&keyName2=valueName2"); +let iter: Iterable = searchParamsObject.entries(); +let pairs = Array.from(iter); +for (let pair of pairs) { // Show keyName/valueName pairs + console.log(pair[0]+ ', '+ pair[1]); } ``` @@ -677,7 +685,7 @@ forEach(callbackFn: (value: string, key: string, searchParams: this) => void, th **示例:** -```js +```ts const myURLObject = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); myURLObject.searchParams.forEach((value, name, searchParams) => { console.log(name, value, myURLObject.searchParams === searchParams); @@ -712,10 +720,10 @@ get(name: string): string | null **示例:** -```js -let paramsObject = new Url.URLSearchParams('name=Jonathan&age=18'); -let name = paramsObject.get("name"); // is the string "Jonathan" -let age = parseInt(paramsObject.get("age"), 10); // is the number 18 +```ts +let paramsObject = new Url.URLSearchParams('name=Jonathan&age=18'); +let name = paramsObject.get("name"); // is the string "Jonathan" +let age = paramsObject.get("age"); // is the string '18' ``` @@ -745,7 +753,7 @@ has(name: string): boolean **示例:** -```js +```ts let urlObject = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLSearchParams(urlObject.search.slice(1)); paramsObject.has('bard') === true; @@ -773,7 +781,7 @@ set(name: string, value: string): void **示例:** -```js +```ts let urlObject = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); let paramsObject = new Url.URLSearchParams(urlObject.search.slice(1)); paramsObject.set('baz', '3'); // Add a third parameter. @@ -794,10 +802,10 @@ sort(): void **示例:** -```js +```ts let searchParamsObject = new Url.URLSearchParams("c=3&a=9&b=4&d=2"); // Create a test URLSearchParams object searchParamsObject.sort(); // Sort the key/value pairs -console.log(searchParamsObject.toString()); // Display the sorted query string // Output a=9&b=2&c=3&d=4 +console.log(searchParamsObject.toString()); // Display the sorted query string // Output a=9&b=4&c=3&d=2 ``` @@ -821,10 +829,11 @@ keys(): IterableIterator<string> **示例:** -```js +```ts let searchParamsObject = new Url.URLSearchParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing -for (var key of searchParamsObject .keys()) { // Output key-value pairs - console.log(key); +let keys = Array.from(searchParamsObject.keys()); +for (let key of keys) { // Output key-value pairs + console.log(key); } ``` @@ -849,10 +858,11 @@ values(): IterableIterator<string> **示例:** -```js +```ts let searchParams = new Url.URLSearchParams("key1=value1&key2=value2"); // Create a URLSearchParamsObject object for testing -for (var value of searchParams.values()) { - console.log(value); +let values = Array.from(searchParams.values()); +for (let value of values) { + console.log(value); } ``` @@ -877,11 +887,13 @@ for (var value of searchParams.values()) { **示例:** -```js +```ts const paramsObject = new Url.URLSearchParams('fod=bay&edg=bap'); -for (const [name, value] of paramsObject) { - console.log(name, value); -} +let iter: Iterable = paramsObject[Symbol.iterator](); +let pairs = Array.from(iter); +for (let pair of pairs) { + console.log(pair[0] + ', ' + pair[1]); +} ``` ### tostring(deprecated) @@ -904,7 +916,7 @@ toString(): string **示例:** -```js +```ts let url = new Url.URL('https://developer.exampleUrl/?fod=1&bard=2'); let params = new Url.URLSearchParams(url.search.slice(1)); params.append('fod', '3'); diff --git a/zh-cn/application-dev/reference/apis/js-apis-xml.md b/zh-cn/application-dev/reference/apis/js-apis-xml.md index 88e30b7e38..4d8f0cdf97 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-xml.md +++ b/zh-cn/application-dev/reference/apis/js-apis-xml.md @@ -30,7 +30,7 @@ XmlSerializer的构造函数。 **示例:** -```js +```ts let arrayBuffer = new ArrayBuffer(2048); let thatSer = new xml.XmlSerializer(arrayBuffer, "utf-8"); thatSer.setDeclaration(); @@ -61,7 +61,7 @@ setAttributes(name: string, value: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -94,7 +94,7 @@ addEmptyElement(name: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -119,7 +119,7 @@ setDeclaration(): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -153,7 +153,7 @@ startElement(name: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -180,7 +180,7 @@ endElement(): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -215,7 +215,7 @@ setNamespace(prefix: string, namespace: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -248,7 +248,7 @@ setComment(text: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -279,7 +279,7 @@ setCDATA(text: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -310,7 +310,7 @@ setText(text: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -344,7 +344,7 @@ setDocType(text: string): void **示例:** -```js +```ts const myMAX = 2048; let arrayBuffer = new ArrayBuffer(myMAX); let thatSer = new xml.XmlSerializer(arrayBuffer); @@ -379,10 +379,10 @@ constructor(buffer: ArrayBuffer | DataView, encoding?: string) **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + + '' + ']>' + '' + ' ' + @@ -405,13 +405,14 @@ let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer, 'UTF-8'); let str1 = ''; -function func1(name, value){ - str1 += name+':'+value; - return true; +function func1(name: string, value: string) { + str1 += name + value; + return true; } -let options = {supportDoctype:true, ignoreNameSpace:true, tagValueCallbackFunction:func1} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tagValueCallbackFunction:func1} that.parse(options); -console.log(str1) //'note:company:title:title:lens:lens:a:b:h:table:h:tr:h:td:h:td:' +console.log(str1) +// note []note funcrion matchwo(a,6){return 1;} Hello, World! companyJohn amp;amp; Hanscompany titleHappytitle titleHappytitle lensWorklens lensPlaylens go there abba h:table h:tr h:tdApplesh:td h:tdBananash:td h:tr h:tablenote ``` @@ -431,32 +432,28 @@ parse(option: ParseOptions): void **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getDepth(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getDepth() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:0key:2 value:1key:10 value:1key:2 value:2key:4 value:2key:3 value:2key:10 value:1key:2 value:2key:4 value:2key:3 value:2key:10 value:1key:2 value:2key:4 value:2key:3 value:2key:3 value:1key:1 value:0 +// key:0 value:0 key:2 value:1 key:10 value:1 key:2 value:2 key:4 value:2 key:3 value:2 key:10 value:1 key:2 value:2 key:4 value:2 key:3 value:2 key:10 value:1 key:2 value:2 key:4 value:2 key:3 value:2 key:3 value:1 key:1 value:0 // 解析: // key代表了当前事件类型,value为当前解析的深度。你可以根据EVENTTYPE来知道具体的解析事件。例如本示例结果key: value代表含义为: // 0(START_DOCUMENT):0(起始深度为0), 2(START_TAG):1(解析到开始标签node, 对应深度为1), 10(WHITESPACE):1(解析到空白标签空格, 对应深度为1), 2(START_TAG):2(解析到开始标签title, 对应深度为2), ... @@ -499,32 +496,28 @@ getColumnNumber(): number **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getColumnNumber(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getColumnNumber() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:1key:2 value:77key:10 value:81key:2 value:88key:4 value:93key:3 value:101key:10 value:105key:2 value:111key:4 value:115key:3 value:122key:10 value:126key:2 value:132key:4 value:136key:3 value:143key:3 value:150key:1 value:299 +// key:0 value:1 key:2 value:77 key:10 value:81 key:2 value:88 key:4 value:93 key:3 value:101 key:10 value:105 key:2 value:111 key:4 value:115 key:3 value:122 key:10 value:126 key:2 value:132 key:4 value:136 key:3 value:143 key:3 value:150 key:1 value:299 ``` ### getDepth @@ -543,32 +536,28 @@ getDepth(): number **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getDepth(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getDepth() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:0key:2 value:1key:10 value:1key:2 value:2key:4 value:2key:3 value:2key:10 value:1key:2 value:2key:4 value:2key:3 value:2key:10 value:1key:2 value:2key:4 value:2key:3 value:2key:3 value:1key:1 value:0 +// key:0 value:0 key:2 value:1 key:10 value:1 key:2 value:2 key:4 value:2 key:3 value:2 key:10 value:1 key:2 value:2 key:4 value:2 key:3 value:2 key:10 value:1 key:2 value:2 key:4 value:2 key:3 value:2 key:3 value:1 key:1 value:0 // 解析: // key代表了当前事件类型,value为当前解析的深度。你可以根据EVENTTYPE来知道具体的解析事件。例如本示例结果key: value代表含义为: // 0(START_DOCUMENT):0(起始深度为0), 2(START_TAG):1(解析到开始标签node, 对应深度为1), 10(WHITESPACE):1(解析到空白标签空格, 对应深度为1), 2(START_TAG):2(解析到开始标签title, 对应深度为2), ... @@ -590,32 +579,28 @@ getLineNumber(): number **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getLineNumber(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getLineNumber() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:1key:2 value:1key:10 value:1key:2 value:1key:4 value:1key:3 value:1key:10 value:1key:2 value:1key:4 value:1key:3 value:1key:10 value:1key:2 value:1key:4 value:1key:3 value:1key:3 value:1key:1 value:1 +// key:0 value:1 key:2 value:1 key:10 value:1 key:2 value:1 key:4 value:1 key:3 value:1 key:10 value:1 key:2 value:1 key:4 value:1 key:3 value:1 key:10 value:1 key:2 value:1 key:4 value:1 key:3 value:1 key:3 value:1 key:1 value:1 ``` ### getName @@ -634,32 +619,28 @@ getName(): string **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getName(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getName() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:key:2 value:notekey:10 value:key:2 value:titlekey:4 value:key:3 value:titlekey:10 value:key:2 value:todokey:4 value:key:3 value:todokey:10 value:key:2 value:todokey:4 value:key:3 value:todokey:3 value:notekey:1 value: +// key:0 value: key:2 value:note key:10 value: key:2 value:title key:4 value: key:3 value:title key:10 value: key:2 value:todo key:4 value: key:3 value:todo key:10 value: key:2 value:todo key:4 value: key:3 value:todo key:3 value:note key:1 value: ``` ### getNamespace @@ -677,32 +658,28 @@ getNamespace(): string **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getNamespace(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getNamespace() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:key:2 value:key:10 value:key:2 value:key:4 value:key:3 value:key:10 value:key:2 value:key:4 value:key:3 value:key:10 value:key:2 value:key:4 value:key:3 value:key:3 value:key:1 value: +// key:0 value: key:2 value: key:10 value: key:2 value: key:4 value: key:3 value: key:10 value: key:2 value: key:4 value: key:3 value: key:10 value: key:2 value: key:4 value: key:3 value: key:3 value: key:1 value: ``` ### getPrefix @@ -720,32 +697,28 @@ getPrefix(): string **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getPrefix(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getPrefix() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:key:2 value:key:10 value:key:2 value:key:4 value:key:3 value:key:10 value:key:2 value:key:4 value:key:3 value:key:10 value:key:2 value:key:4 value:key:3 value:key:3 value:key:1 value: +// key:0 value: key:2 value: key:10 value: key:2 value: key:4 value: key:3 value: key:10 value: key:2 value: key:4 value: key:3 value: key:10 value: key:2 value: key:4 value: key:3 value: key:3 value: key:1 value: ``` ### getText @@ -764,32 +737,28 @@ getText(): string **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getText(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += ' key:' + key + ' value:' + value.getText() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:key:2 value:key:10 value: key:2 value:key:4 value:Happykey:3 value:key:10 value: key:2 value:key:4 value:Workkey:3 value:key:10 value: key:2 value:key:4 value:Playkey:3 value:key:3 value:key:1 value: +// key:0 value: key:2 value: key:10 value: key:2 value: key:4 value:Happy key:3 value: key:10 value: key:2 value: key:4 value:Work key:3 value: key:10 value: key:2 value: key:4 value:Play key:3 value: key:3 value: key:1 value: ``` ### isEmptyElementTag @@ -807,32 +776,28 @@ isEmptyElementTag(): boolean **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.isEmptyElementTag(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.isEmptyElementTag() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:falsekey:2 value:falsekey:10 value:falsekey:2 value:falsekey:4 value:falsekey:3 value:falsekey:10 value:falsekey:2 value:falsekey:4 value:falsekey:3 value:falsekey:10 value:falsekey:2 value:falsekey:4 value:falsekey:3 value:falsekey:3 value:falsekey:1 value:false +// key:0 value:false key:2 value:false key:10 value:false key:2 value:false key:4 value:false key:3 value:false key:10 value:false key:2 value:false key:4 value:false key:3 value:false key:10 value:false key:2 value:false key:4 value:false key:3 value:false key:3 value:false key:1 value:false ``` ### isWhitespace @@ -850,32 +815,28 @@ isWhitespace(): boolean **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.isWhitespace(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.isWhitespace() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:truekey:2 value:falsekey:10 value:truekey:2 value:truekey:4 value:falsekey:3 value:truekey:10 value:truekey:2 value:truekey:4 value:falsekey:3 value:truekey:10 value:truekey:2 value:truekey:4 value:falsekey:3 value:truekey:3 value:truekey:1 value:true +// key:0 value:true key:2 value:false key:10 value:true key:2 value:true key:4 value:false key:3 value:true key:10 value:true key:2 value:true key:4 value:false key:3 value:true key:10 value:true key:2 value:true key:4 value:false key:3 value:true key:3 value:true key:1 value:true ``` ### getAttributeCount @@ -892,32 +853,28 @@ getAttributeCount(): number **示例:** -```js +```ts import util from '@ohos.util'; let strXml = - '' + - '' + - ' Happy' + - ' Work' + - ' Play' + - ''; + '' + + '' + + ' Happy' + + ' Work' + + ' Play' + + ''; let textEncoder = new util.TextEncoder(); let arrbuffer = textEncoder.encodeInto(strXml); let that = new xml.XmlPullParser(arrbuffer.buffer); -let arrTag = {}; let str = ""; -let i = 0; -function func(key, value){ - arrTag[i] = 'key:'+key+' value:'+ value.getAttributeCount(); - str += arrTag[i]; - i++; - return true; // Determines whether to continually parse, which is used to continue or terminate parsing. +function func(key: xml.EventType, value: xml.ParseInfo) { + str += 'key:' + key + ' value:' + value.getAttributeCount() + ' '; + return true; // Determines whether to continually parse, which is used to continue or terminate parsing. } -let options = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} +let options: xml.ParseOptions = {supportDoctype:true, ignoreNameSpace:true, tokenValueCallbackFunction:func} that.parse(options); console.log(str); // 输出: -// key:0 value:0key:2 value:2key:10 value:0key:2 value:0key:4 value:0key:3 value:0key:10 value:0key:2 value:0key:4 value:0key:3 value:0key:10 value:0key:2 value:0key:4 value:0key:3 value:0key:3 value:0key:1 value:0 +// key:0 value:0 key:2 value:2 key:10 value:0 key:2 value:0 key:4 value:0 key:3 value:0 key:10 value:0 key:2 value:0 key:4 value:0 key:3 value:0 key:10 value:0 key:2 value:0 key:4 value:0 key:3 value:0 key:3 value:0 key:1 value:0 ``` ## EventType -- GitLab