harmony 鸿蒙@ohos.util (util)

2022-08-09 浏览 (785)

@ohos.util (util)

The util module provides common utility functions, such as TextEncoder and TextDecoder for string encoding and decoding, RationalNumber8+ for rational number operations, LRUCache9+ for cache management, ScopeHelper9+ for range determination, Base64Helper9+ for Base64 encoding and decoding, and types8+ for built-in object type check.

NOTE

The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Modules to Import

import util from '@ohos.util';

util.format9+

format(format: string, ...args: Object[]): string

Formats the specified values and inserts them into the string by replacing the wildcard in the string.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
formatstringYesString.
...argsObject[]NoValues to format. The formatted values will replace the wildcard in the string. If this parameter is not set, the first parameter is returned by default.

Return value

TypeDescription
stringString containing the formatted values.

Example

let res = util.format("%s", "hello world!");
console.log(res);

util.errnoToString9+

errnoToString(errno: number): string

Obtains detailed information about a system error code.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
errnonumberYesError code generated.

Return value

TypeDescription
stringDetailed information about the error code.

Example

  let errnum = -1; // -1 is a system error code.
  let result = util.errnoToString(errnum);
  console.log("result = " + result);

Some error code and message examples

Error CodeMessage
-1operation not permitted
-2no such file or directory
-3no such process
-4interrupted system call
-5i/o error
-11resource temporarily unavailable
-12not enough memory
-13permission denied
-100network is down

util.callbackWrapper

callbackWrapper(original: Function): (err: Object, value: Object )=>void

Calls back an asynchronous function. In the callback, the first parameter indicates the cause of the rejection (the value is null if the promise has been resolved), and the second parameter indicates the resolved value.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
originalFunctionYesAsynchronous function.

Return value

TypeDescription
FunctionCallback, in which the first parameter indicates the cause of the rejection (the value is null if the promise has been resolved) and the second parameter indicates the resolved value.

Example

async function fn() {
  return 'hello world';
}
let cb = util.callbackWrapper(fn);
cb(1, (err : Object, ret : string) => {
  if (err) throw new Error;
  console.log(ret);
});

util.promisify9+

promisify(original: (err: Object, value: Object) => void): Function

Processes an asynchronous function and returns a promise.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
originalFunctionYesAsynchronous function.

Return value

TypeDescription
FunctionFunction in the error-first style (that is, (err, value) =>... is called as the last parameter) and the promise.

Example

function fun(num, callback) {
  if (typeof num === 'number') {
      callback(null, num + 3);
  } else {
      callback("type err");
  }
}

const addCall = util.promisify(fun);
(async () => {
  try {
      let res = await addCall(2);
      console.log(res);
  } catch (err) {
      console.log(err);
  }
})();

util.generateRandomUUID9+

generateRandomUUID(entropyCache?: boolean): string

Uses a secure random number generator to generate a random universally unique identifier (UUID) of the string type in RFC 4122 version 4.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
entropyCachebooleanNoWhether a cached UUID can be used. The default value is true.

Return value

TypeDescription
stringA string representing the UUID generated.

Example

let uuid = util.generateRandomUUID(true);
console.log("RFC 4122 Version 4 UUID:" + uuid);
// Output:
// RFC 4122 Version 4 UUID:88368f2a-d5db-47d8-a05f-534fab0a0045

util.generateRandomBinaryUUID9+

generateRandomBinaryUUID(entropyCache?: boolean): Uint8Array

Uses a secure random number generator to generate a random UUID of the Uint8Array type in RFC 4122 version 4.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
entropyCachebooleanNoWhether a cached UUID can be used. The default value is true.

Return value

TypeDescription
Uint8ArrayA Uint8Array value representing the UUID generated.

Example

let uuid = util.generateRandomBinaryUUID(true);
console.log(JSON.stringify(uuid));
// Output:
// 138,188,43,243,62,254,70,119,130,20,235,222,199,164,140,150

util.parseUUID9+

parseUUID(uuid: string): Uint8Array

Converts the UUID of the string type generated by generateRandomUUID to the UUID of the Uint8Array type generated by generateRandomBinaryUUID, as described in RFC 4122 version 4.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
uuidstringYesA string representing the UUID.

Return value

TypeDescription
Uint8ArrayA Uint8Array value representing the UUID parsed. If the parsing fails, SyntaxError is thrown.

Example

let uuid = util.parseUUID("84bdf796-66cc-4655-9b89-d6218d100f9c");
console.log(JSON.stringify(uuid));
// Output:
// 132,189,247,150,102,204,70,85,155,137,214,33,141,16,15,156

util.printf(deprecated)

printf(format: string, ...args: Object[]): string

Formats the specified values and inserts them into the string by replacing the wildcard in the string.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use util.format9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
formatstringYesString.
...argsObject[]NoValues to format. The formatted values will replace the wildcard in the string. If this parameter is not set, the first parameter is returned by default.

Return value

TypeDescription
stringString containing the formatted values.

Example

let res = util.printf("%s", "hello world!");
console.log(res);

util.getErrorString(deprecated)

getErrorString(errno: number): string

Obtains detailed information about a system error code.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use util.errnoToString9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
errnonumberYesError code generated.

Return value

TypeDescription
stringDetailed information about the error code.

Example

let errnum = -1; // -1 is a system error code.
let result = util.getErrorString(errnum);
console.log("result = " + result);

util.promiseWrapper(deprecated)

promiseWrapper(original: (err: Object, value: Object) => void): Object

Processes an asynchronous function and returns a promise.

NOTE

This API is unavailable. You are advised to use util.promisify9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
originalFunctionYesAsynchronous function.

Return value

TypeDescription
FunctionFunction in the error-first style (that is, (err, value) =>... is called as the last parameter) and the promise.

TextDecoder

Provides APIs to decode byte arrays into strings. It supports multiple formats, including UTF-8, UTF-16LE, UTF-16BE, ISO-8859, and Windows-1251.

Attributes

System capability: SystemCapability.Utils.Lang

NameTypeReadableWritableDescription
encodingstringYesNoEncoding format.
- Supported formats: utf-8, ibm866, iso-8859-2, iso-8859-3, iso-8859-4, iso-8859-5, iso-8859-6, iso-8859-7, iso-8859-8, iso-8859-8-i, iso-8859-10, iso-8859-13, iso-8859-14, iso-8859-15, koi8-r, koi8-u, macintosh, windows-874, windows-1250, windows-1251, windows-1252, windows-1253, windows-1254, windows-1255, windows-1256, windows-1257, windows-1258, x-mac-cyrilli, gbk, gb18030, big5, euc-jp, iso-2022-jp, shift_jis, euc-kr, utf-16be, utf-16le
fatalbooleanYesNoWhether to display fatal errors.
ignoreBOMbooleanYesNoWhether to ignore the byte order marker (BOM). The default value is false, which indicates that the result contains the BOM.

constructor9+

constructor()

A constructor used to create a TextDecoder object.

System capability: SystemCapability.Utils.Lang

create9+

create(encoding?: string,options?: { fatal?: boolean; ignoreBOM?: boolean }): TextDecoder;

Creates a TextDecoder object. It provides the same function as the deprecated argument constructor.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
encodingstringNoEncoding format. The default format is 'utf-8'.
optionsObjectNoEncoding-related options, which include fatal and ignoreBOM.

Table 1.1 options

NameTypeMandatoryDescription
fatalbooleanNoWhether to display fatal errors. The default value is false.
ignoreBOMbooleanNoWhether to ignore the BOM. The default value is false.

Example

  let result = util.TextDecoder.create('utf-8', { ignoreBOM : true })
  let retStr = result.encoding

decodeWithStream9+

decodeWithStream(input: Uint8Array, options?: { stream?: boolean }): string

Decodes the input content.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
inputUint8ArrayYesUint8Array to decode.
optionsObjectNoOptions related to decoding.

Table 2 options

NameTypeMandatoryDescription
streambooleanNoWhether to allow data blocks in subsequent decodeWithStream(). If data is processed in blocks, set this parameter to true. If this is the last data block to process or data is not divided into blocks, set this parameter to false. The default value is false.

Return value

TypeDescription
stringData decoded.

Example

let textDecoder = new util.TextDecoder("utf-8",{ignoreBOM: true});
let result = new Uint8Array(6);
result[0] = 0xEF;
result[1] = 0xBB;
result[2] = 0xBF;
result[3] = 0x61;
result[4] = 0x62;
result[5] = 0x63;
console.log("input num:");
let retStr = textDecoder.decodeWithStream( result , {stream: false});
console.log("retStr = " + retStr);

constructor(deprecated)

constructor(encoding?: string, options?: { fatal?: boolean; ignoreBOM?: boolean })

A constructor used to create a TextDecoder object.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use create9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
encodingstringNoEncoding format. The default format is 'utf-8'.
optionsObjectNoEncoding-related options, which include fatal and ignoreBOM.

Table 1 options

NameTypeMandatoryDescription
fatalbooleanNoWhether to display fatal errors. The default value is false.
ignoreBOMbooleanNoWhether to ignore the BOM. The default value is false.

Example

let textDecoder = new util.TextDecoder("utf-8",{ignoreBOM: true});

decode(deprecated)

decode(input: Uint8Array, options?: { stream?: false }): string

Decodes the input content.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use decodeWithStream9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
inputUint8ArrayYesUint8Array to decode.
optionsObjectNoOptions related to decoding.

Table 2 options

NameTypeMandatoryDescription
streambooleanNoWhether to allow data blocks in subsequent decode(). If data is processed in blocks, set this parameter to true. If this is the last data block to process or data is not divided into blocks, set this parameter to false. The default value is false.

Return value

TypeDescription
stringData decoded.

Example

let textDecoder = new util.TextDecoder("utf-8",{ignoreBOM: true});
let result = new Uint8Array(6);
result[0] = 0xEF;
result[1] = 0xBB;
result[2] = 0xBF;
result[3] = 0x61;
result[4] = 0x62;
result[5] = 0x63;
console.log("input num:");
let retStr = textDecoder.decode( result , {stream: false});
console.log("retStr = " + retStr);

TextEncoder

Provides APIs to encode strings into byte arrays. It supports multiple formats, including UTF-8, UTF-16LE, and UTF-16BE. When TextEncoder is used for encoding, the number of bytes occupied by a character varies according to the encoding format. For example, a Chinese character usually occupies three bytes in UTF-8 encoding format but two bytes in UTF-16LE or UTF-16BE encoding format. Therefore, when using TextEncoder, you must explicitly specify the encoding format to obtain the required encoding result.

Attributes

System capability: SystemCapability.Utils.Lang

NameTypeReadableWritableDescription
encodingstringYesNoEncoding format. The default format is 'utf-8'.

constructor

constructor()

A constructor used to create a TextEncoder object.

System capability: SystemCapability.Utils.Lang

Example

let textEncoder = new util.TextEncoder();

constructor9+

constructor(encoding?: string)

A constructor used to create a TextEncoder object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
encodingstringNoEncoding format. The default format is 'utf-8'.

Example

let textEncoder = new util.TextEncoder("utf-8");

encodeInto9+

encodeInto(input?: string): Uint8Array

Encodes the input content.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
inputstringNoString to encode. The default value is an empty string.

Return value

TypeDescription
Uint8ArrayEncoded text.

Example

let textEncoder = new util.TextEncoder();
let buffer = new ArrayBuffer(20);
let result = new Uint8Array(buffer);
result = textEncoder.encodeInto("\uD800¥¥");

encodeIntoUint8Array9+

encodeIntoUint8Array(input: string, dest: Uint8Array): { read: number; written: number }

Stores the UTF-8 encoded text.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
inputstringYesString to encode.
destUint8ArrayYesUint8Array instance used to store the UTF-8 encoded text.

Return value

TypeDescription
Uint8ArrayEncoded text.

Example

let that = new util.TextEncoder()
let buffer = new ArrayBuffer(4)
let dest = new Uint8Array(buffer)
let result = new Object()
result = that.encodeIntoUint8Array('abcd', dest)

encodeInto(deprecated)

encodeInto(input: string, dest: Uint8Array): { read: number; written: number }

Stores the UTF-8 encoded text.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use encodeIntoUint8Array9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
inputstringYesString to encode.
destUint8ArrayYesUint8Array instance used to store the UTF-8 encoded text.

Return value

TypeDescription
Uint8ArrayEncoded text.

Example

let that = new util.TextEncoder()
let buffer = new ArrayBuffer(4)
let dest = new Uint8Array(buffer)
let result = new Object()
result = that.encodeInto('abcd', dest)

encode(deprecated)

encode(input?: string): Uint8Array

Encodes the input content.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use encodeInto9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
inputstringNoString to encode. The default value is an empty string.

Return value

TypeDescription
Uint8ArrayEncoded text.

Example

let textEncoder = new util.TextEncoder();
let buffer = new ArrayBuffer(20);
let result = new Uint8Array(buffer);
result = textEncoder.encode("\uD800¥¥");

RationalNumber8+

Provides APIs to compare rational numbers and obtain numerators and denominators. For example, the toString() API can be used to convert a rational number into a string.

constructor9+

constructor()

A constructor used to create a RationalNumber object.

System capability: SystemCapability.Utils.Lang

Example

  let rationalNumber = new util.RationalNumber();

parseRationalNumber9+

parseRationalNumber(numerator: number,denominator: number): RationalNumber

Parses a rational number. Previously, this processing is an internal action of the deprecated constructor.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
numeratornumberYesNumerator, which is an integer.
denominatornumberYesDenominator, which is an integer.

Example

  let rationalNumber = util.RationalNumber.parseRationalNumber(1,2)

createRationalFromString8+

static createRationalFromString​(rationalString: string): RationalNumber​

Creates a RationalNumber object based on the given string.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rationalStringstringYesString used to create the RationalNumber object.

Return value

TypeDescription
objectRationalNumber object created.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let rational = util.RationalNumber.createRationalFromString("3/4");

compare9+

compare​(another: RationalNumber): number​

Compares this RationalNumber object with a given object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
anotherRationalNumberYesObject used to compare with this RationalNumber object.

Return value

TypeDescription
numberReturns 0 if the two objects are equal; returns 1 if the given object is less than this object; return -1 if the given object is greater than this object.

Example

let rationalNumber = new util.RationalNumber(1,2);
let rational = util.RationalNumber.createRationalFromString("3/4");
let result = rationalNumber.compare(rational);

valueOf8+

valueOf(): number

Obtains the value of this RationalNumber object as an integer or a floating-point number.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberAn integer or a floating-point number.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.valueOf();

equals8+

equals​(obj: Object): boolean

Checks whether this RationalNumber object equals the given object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
objectObjectYesObject used to compare with this RationalNumber object.

Return value

TypeDescription
booleanReturns true if the two objects are equal; returns false otherwise.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let rational = util.RationalNumber.createRationalFromString("3/4");
  let result = rationalNumber.equals(rational);

getCommonFactor9+

getCommonFactor(number1: number,number2: number): number

Obtains the greatest common divisor of two specified integers.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
number1numberYesThe first integer used to get the greatest common divisor.
number2numberYesThe second integer used to get the greatest common divisor.

Return value

TypeDescription
numberGreatest common divisor obtained.

Example

let rationalNumber = new util.RationalNumber(1,2);
let result = util.RationalNumber.getCommonFactor(4,6);

getNumerator8+

getNumerator​(): number

Obtains the numerator of this RationalNumber object.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumerator of this RationalNumber object.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.getNumerator();

getDenominator8+

getDenominator​(): number

Obtains the denominator of this RationalNumber object.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberDenominator of this RationalNumber object.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.getDenominator();

isZero8+

isZero​():boolean

Checks whether this RationalNumber object is 0.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
booleanReturns true if the value of this RationalNumber object is 0; returns false otherwise.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.isZero();

isNaN8+

isNaN​(): boolean

Checks whether this RationalNumber object is a Not a Number (NaN).

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
booleanReturns true if this RationalNumber object is a NaN (the denominator and numerator are both 0); returns false otherwise.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.isNaN();

isFinite8+

isFinite​():boolean

Checks whether this RationalNumber object represents a finite value.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
booleanReturns true if this RationalNumber object represents a finite value (the denominator is not 0); returns false otherwise.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.isFinite();

toString8+

toString​(): string

Obtains the string representation of this RationalNumber object.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
stringReturns NaN if the numerator and denominator of this object are both 0; returns a string in Numerator/Denominator format otherwise, for example, 3/5.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = rationalNumber.toString();

constructor(deprecated)

constructor(numerator: number,denominator: number)

A constructor used to create a RationalNumber object.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use constructor9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
numeratornumberYesNumerator, which is an integer.
denominatornumberYesDenominator, which is an integer.

Example

  let rationalNumber = new util.RationalNumber(1,2);

compareTo(deprecated)

compareTo​(another: RationalNumber): number​

Compares this RationalNumber object with a given object.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use compare9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
anotherRationalNumberYesObject used to compare with this RationalNumber object.

Return value

TypeDescription
numberReturns 0 if the two objects are equal; returns 1 if the given object is less than this object; return -1 if the given object is greater than this object.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let rational = util.RationalNumber.createRationalFromString("3/4");
  let result = rationalNumber.compareTo(rational);

getCommonDivisor(deprecated)

static getCommonDivisor​(number1: number,number2: number): number

Obtains the greatest common divisor of two specified integers.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use getCommonFactor9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
number1numberYesThe first integer used to get the greatest common divisor.
number2numberYesThe second integer used to get the greatest common divisor.

Return value

TypeDescription
numberGreatest common divisor obtained.

Example

  let rationalNumber = new util.RationalNumber(1,2);
  let result = util.RationalNumber.getCommonDivisor(4,6);

LRUCache9+

Provides APIs to discard the least recently used data to make rooms for new elements when the cache is full. This class uses the Least Recently Used (LRU) algorithm, which believes that the recently used data may be accessed again in the near future and the least accessed data is the least valuable data and should be removed from the cache.

Attributes

System capability: SystemCapability.Utils.Lang

NameTypeReadableWritableDescription
lengthnumberYesNoTotal number of values in this cache.

Example

  let  pro : util.LRUCache<number, number> = new util.LRUCache();
  pro.put(2,10);
  pro.put(1,8);
  let result = pro.length;

constructor9+

constructor(capacity?: number)

A constructor used to create a LruCache instance. The default capacity of the cache is 64.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
capacitynumberNoCapacity of the LruCache to create. The default value is 64.

Example

  let lrubuffer : util.LRUCache<number, number> = new util.LRUCache();

updateCapacity9+

updateCapacity(newCapacity: number): void

Changes the LruCache capacity. If the new capacity is less than or equal to 0, an exception will be thrown.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
newCapacitynumberYesNew capacity of the LruCache.

Example

  let pro : util.LRUCache<number,number>= new util.LRUCache();
  pro.updateCapacity(100);

toString9+

toString(): string

Obtains the string representation of this LruCache object.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
stringString representation of this LruCache object.

Example

  let pro : util.LRUCache<number,number> = new util.LRUCache();
  pro.put(2,10);
  pro.get(2);
  pro.remove(20);
  let result = pro.toString();

getCapacity9+

getCapacity(): number

Obtains the capacity of this cache.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberCapacity of this cache.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
let result = pro.getCapacity();

clear9+

clear(): void

Clears key-value pairs from this cache. The afterRemoval() method will be called to perform subsequent operations.

System capability: SystemCapability.Utils.Lang

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
let result = pro.length;
pro.clear();

getCreateCount9+

getCreateCount(): number

Obtains the number of return values for createDefault().

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of return values for createDefault().

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(1,8);
let result = pro.getCreateCount();

getMissCount9+

getMissCount(): number

Obtains the number of times that the queried values are mismatched.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of times that the queried values are mismatched.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
pro.get(2);
let result = pro.getMissCount();

getRemovalCount9+

getRemovalCount(): number

Obtains the number of removals from this cache.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of removals from the cache.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
pro.updateCapacity(2);
pro.put(50,22);
let result = pro.getRemovalCount();

getMatchCount9+

getMatchCount(): number

Obtains the number of times that the queried values are matched.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of times that the queried values are matched.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
pro.get(2);
let result = pro.getMatchCount();

getPutCount9+

getPutCount(): number

Obtains the number of additions to this cache.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of additions to the cache.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
let result = pro.getPutCount();

isEmpty9+

isEmpty(): boolean

Checks whether this cache is empty.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
booleanReturns true if the cache does not contain any value.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
let result = pro.isEmpty();

get9+

get(key: K): V|undefined

Obtains the value of the specified key.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey based on which the value is queried.

Return value

TypeDescription
V |undefinedReturns the value of the key if a match is found in the cache; returns undefined otherwise.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
let result  = pro.get(2);

put9+

put(key: K,value: V): V

Adds a key-value pair to this cache.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey of the key-value pair to add.
valueVYesValue of the key-value pair to add.

Return value

TypeDescription
VReturns the existing value if the key already exists; returns the value added otherwise. If the key or value is null, an exception will be thrown.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
let result = pro.put(2,10);

values9+

values(): V[]

Obtains all values in this cache, listed from the most to the least recently accessed.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
V []All values in the cache, listed from the most to the least recently accessed.

Example

let pro : util.LRUCache<number|string,number|string> = new util.LRUCache();
pro.put(2,10);
pro.put(2,"anhu");
pro.put("afaf","grfb");
let result = pro.values();

keys9+

keys(): K[]

Obtains all keys in this cache, listed from the most to the least recently accessed.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
K []All keys in the cache, listed from the most to the least recently accessed.

Example

let pro : util.LRUCache<number,number>= new util.LRUCache();
pro.put(2,10);
let result = pro.keys();

remove9+

remove(key: K): V|undefined

Removes the specified key and its value from this cache.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey to remove.

Return value

TypeDescription
V | undefinedReturns an Optional object containing the removed key-value pair if the key exists in the cache; returns an empty Optional object otherwise. If the key is null, an exception will be thrown.

Example

let pro : util.LRUCache<number,number>= new util.LRUCache();
pro.put(2,10);
let result = pro.remove(20);

afterRemoval9+

afterRemoval(isEvict: boolean,key: K,value: V,newValue: V): void

Performs subsequent operations after a value is removed.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
isEvictbooleanYesWhether the cache capacity is insufficient. If the value is true, this API is called due to insufficient capacity.
keyKYesKey removed.
valueVYesValue removed.
newValueVYesNew value for the key if the put() method is called and the key to be added already exists. In other cases, this parameter is left blank.

Example

let arr : Object[] = [];
class ChildLruBuffer<K, V> extends util.LRUCache<K, V> {
  constructor() {
    super();
  }

  afterRemoval(isEvict: boolean, key: K, value: V, newValue: V) : void
  {
    if (isEvict === false) {
      arr = [key, value, newValue];
    }
  }
}
let lru : ChildLruBuffer<number,number|null>= new ChildLruBuffer();
lru.afterRemoval(false,10,30,null);

contains9+

contains(key: K): boolean

Checks whether this cache contains the specified key.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey to check.

Return value

TypeDescription
booleanReturns true if the cache contains the specified key; returns false otherwise.

Example

let pro : util.LRUCache<number|object,number> = new util.LRUCache();
pro.put(2,10);
class Lru{
s : string = ""
}
let obj : Lru = {s : "key" }
let result = pro.contains(obj);

createDefault9+

createDefault(key: K): V

Creates a value if the value of the specified key is not available.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey of which the value is missing.

Return value

TypeDescription
VValue of the key.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
let result = pro.createDefault(50);

entries9+

entries(): IterableIterator<[K,V]>

Obtains a new iterator object that contains all key-value pairs in this object.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
[K, V]Iterable array.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
let result = pro.entries();

[Symbol.iterator]9+

[Symbol.iterator](): IterableIterator<[K, V]>

Obtains a two-dimensional array in key-value pairs.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
[K, V]Two-dimensional array in key-value pairs.

Example

let pro : util.LRUCache<number,number> = new util.LRUCache();
pro.put(2,10);
let result = pro[Symbol.iterator]();

ScopeComparable8+

The values of the ScopeComparable type are used to implement the compareTo method. Therefore, ensure that the input parameters are comparable.

System capability: SystemCapability.Utils.Lang

compareTo8+

compareTo(other: ScopeComparable): boolean;

Compares two values and returns a Boolean value.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
otherScopeComparableYesThe other value to be compared with the current value.

Return value

TypeDescription
booleanIf the current value is greater than or equal to the input value, true is returned. Otherwise, false is returned.

Example

Create a class to implement the compareTo method. The Temperature class is used as an example in the following sample code.

  class Temperature{
    private readonly _temp: number;
    constructor(value : number) {
      this._temp = value;
    }
    compareTo(value : Temperature ) {
      return this._temp >= value.getTemp();
    }
    getTemp() {
      return this._temp;
    }
    toString() : string {
      return this._temp.toString();
    }
  }

ScopeType8+

Defines the type of values in a Scope object.

System capability: SystemCapability.Utils.Lang

TypeDescription
numberThe value type is a number.
ScopeComparableThe value type is ScopeComparable.

ScopeHelper9+

Provides APIs to define the valid range of a field. The constructor of this class creates comparable objects with lower and upper limits.

constructor9+

constructor(lowerObj: ScopeType, upperObj: ScopeType)

A constructor used to create a ScopeHelper object with the specified upper and lower limits.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
lowerObjScopeTypeYesLower limit of the Scope object.
upperObjScopeTypeYesUpper limit of the Scope object.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}
let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.ScopeHelper(tempLower, tempUpper);

toString9+

toString(): string

Obtains a string representation that contains this Scope.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
stringString representation containing the Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.toString();

intersect9+

intersect(range: ScopeHelper): ScopeHelper

Obtains the intersection of this Scope and the given Scope.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rangeScopeHelperYesScope specified.

Return value

TypeDescription
ScopeHelper9+Intersection of this Scope and the given Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.ScopeHelper(tempLower, tempUpper);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let rangeFir = new util.ScopeHelper(tempMiDF, tempMidS);
range.intersect(rangeFir);

intersect9+

intersect(lowerObj:ScopeType,upperObj:ScopeType):ScopeHelper

Obtains the intersection of this Scope and the given lower and upper limits.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
lowerObjScopeTypeYesLower limit.
upperObjScopeTypeYesUpper limit.

Return value

TypeDescription
ScopeHelperIntersection of this Scope and the given lower and upper limits.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.intersect(tempMiDF, tempMidS);

getUpper9+

getUpper(): ScopeType

Obtains the upper limit of this Scope.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
ScopeTypeUpper limit of this Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.getUpper();

getLower9+

getLower(): ScopeType

Obtains the lower limit of this Scope.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
ScopeTypeLower limit of this Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.getLower();

expand9+

expand(lowerObj: ScopeType,upperObj: ScopeType): ScopeHelper

Obtains the union set of this Scope and the given lower and upper limits.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
lowerObjScopeTypeYesLower limit.
upperObjScopeTypeYesUpper limit.

Return value

TypeDescription
ScopeHelperUnion set of this Scope and the given lower and upper limits.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.expand(tempMiDF, tempMidS);

expand9+

expand(range: ScopeHelper): ScopeHelper

Obtains the union set of this Scope and the given Scope.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rangeScopeHelperYesScope specified.

Return value

TypeDescription
ScopeHelperUnion set of this Scope and the given Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let range = new util.ScopeHelper(tempLower, tempUpper);
let rangeFir = new util.ScopeHelper(tempMiDF, tempMidS);
let result = range.expand(rangeFir);

expand9+

expand(value: ScopeType): ScopeHelper

Obtains the union set of this Scope and the given value.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueScopeTypeYesValue specified.

Return value

TypeDescription
ScopeHelperUnion set of this Scope and the given value.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.expand(tempMiDF);

contains9+

contains(value: ScopeType): boolean

Checks whether a value is within this Scope.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueScopeTypeYesValue specified.

Return value

TypeDescription
booleanReturns true if the value is within this Scope; returns false otherwise.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.contains(tempMiDF);

contains9+

contains(range: ScopeHelper): boolean

Checks whether a range is within this Scope.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rangeScopeHelperYesScope specified.

Return value

TypeDescription
booleanReturns true if the range is within this Scope; returns false otherwise.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.ScopeHelper(tempLower, tempUpper);
let tempLess = new Temperature(20);
let tempMore = new Temperature(45);
let rangeSec = new util.ScopeHelper(tempLess, tempMore);
let result = range.contains(rangeSec);

clamp9+

clamp(value: ScopeType): ScopeType

Limits a value to this Scope.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueScopeTypeYesValue specified.

Return value

TypeDescription
ScopeTypeReturns lowerObj if the specified value is less than the lower limit; returns upperObj if the specified value is greater than the upper limit; returns the specified value if it is within this Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.clamp(tempMiDF);

Base64Helper9+

The Base64 encoding table contains 62 characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). During encoding, the original data is divided into groups of three bytes, and each group contains a 6-bit number. Then, the corresponding characters in the Base64 encoding table are used to represent these numbers. If the last group contains only one or two bytes, the equal sign (=) is used for padding.

constructor9+

constructor()

A constructor used to create a Base64Helper instance.

System capability: SystemCapability.Utils.Lang

Example

let base64 = new  util.Base64Helper();

encodeSync9+

encodeSync(src: Uint8Array): Uint8Array

Encodes the input content.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode.

Return value

TypeDescription
Uint8ArrayUint8Array encoded.

Example

let that = new util.Base64Helper();
let array = new Uint8Array([115,49,51]);
let result = that.encodeSync(array);

encodeToStringSync9+

encodeToStringSync(src: Uint8Array, options?: Type): string

Encodes the input content.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode.
options10+TypeNoEncoding format.
The following values are available:
- util.Type.BASIC (default value): The output can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). There is no carriage return or line feed character.
- util.Type.MIME: The output can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). Each line of the output contains a maximum of 76 characters, ended with '\r\n'.

Return value

TypeDescription
stringString encoded from the Uint8Array.

Example

let that = new util.Base64Helper();
let array = new Uint8Array([77,97,110,105,115,100,105,115,116,105,110,103,117,105,115,104,101,100,110,111,116,111,110,108,121,98,121,104,105,115,114,101,97,115,111,110,98,117,116,98,121,116,104,105,115,115,105,110,103,117,108,97,114,112,97,115,115,105,111,110,102,114,111,109,111,116,104,101,114,97,110,105,109,97,108,115,119,104,105,99,104,105,115,97,108,117,115,116,111,102,116,104,101,109,105,110,100,101,120,99,101,101,100,115,116,104,101,115,104,111,114,116,118,101,104,101,109,101,110,99,101,111,102,97,110,121,99,97,114,110,97,108,112,108,101,97,115,117,114,101]);
let result = that.encodeToStringSync(array, util.Type.MIME);

decodeSync9+

decodeSync(src: Uint8Array|string, options?: Type): Uint8Array

Decodes the input content.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8Array | stringYesUint8Array or string to decode.
options10+TypeNoEncoding format.
The following values are available:
- util.Type.BASIC (default value): The input can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). There is no carriage return or line feed character.
- util.Type.MIME: The input can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). Each line of the input contains a maximum of 76 characters, ended with '\r\n'.

Return value

TypeDescription
Uint8ArrayUint8Array decoded.

Example

let that = new util.Base64Helper();
let buff = 'TWFuaXNkaXN0aW5ndWlzaGVkbm90b25seWJ5aGlzcmVhc29uYnV0Ynl0aGlzc2luZ3VsYXJwYXNz\r\naW9uZnJvbW90aGVyYW5pbWFsc3doaWNoaXNhbHVzdG9mdGhlbWluZGV4Y2VlZHN0aGVzaG9ydHZl\r\naGVtZW5jZW9mYW55Y2FybmFscGxlYXN1cmU=\r\n';
let result = that.decodeSync(buff, util.Type.MIME);

encode9+

encode(src: Uint8Array): Promise<Uint8Array>

Encodes the input content asynchronously.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode asynchronously.

Return value

TypeDescription
Promise<Uint8Array>Uint8Array obtained after asynchronous encoding.

Example

let that = new util.Base64Helper();
let array = new Uint8Array([115,49,51]);
let rarray = new Uint8Array([99,122,69,122]);
that.encode(array).then(val=>{
  for (let i = 0; i < rarray.length; i++) {
    console.log(val[i].toString())
  }
})

encodeToString9+

encodeToString(src: Uint8Array, options?: Type): Promise<string>

Encodes the input content asynchronously.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode asynchronously.
options10+TypeNoEncoding format.
The following values are available:
- util.Type.BASIC (default value): The output can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). There is no carriage return or line feed character.
- util.Type.MIME: The output can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). Each line of the output contains a maximum of 76 characters, ended with '\r\n'.

Return value

TypeDescription
Promise<string>String obtained after asynchronous encoding.

Example

let that = new util.Base64Helper();
let array = new Uint8Array([77,97,110,105,115,100,105,115,116,105,110,103,117,105,115,104,101,100,110,111,116,111,110,108,121,98,121,104,105,115,114,101,97,115,111,110,98,117,116,98,121,116,104,105,115,115,105,110,103,117,108,97,114,112,97,115,115,105,111,110,102,114,111,109,111,116,104,101,114,97,110,105,109,97,108,115,119,104,105,99,104,105,115,97,108,117,115,116,111,102,116,104,101,109,105,110,100,101,120,99,101,101,100,115,116,104,101,115,104,111,114,116,118,101,104,101,109,101,110,99,101,111,102,97,110,121,99,97,114,110,97,108,112,108,101,97,115,117,114,101]);
that.encodeToString(array, util.Type.MIME).then(val=>{
  // Add information as required.
})

decode9+

decode(src: Uint8Array|string, options?: Type): Promise<Uint8Array>

Decodes the input content asynchronously.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8Array | stringYesUint8Array or string to decode asynchronously.
options10+TypeNoEncoding format.
The following values are available:
- util.Type.BASIC (default value): The input can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). There is no carriage return or line feed character.
- util.Type.MIME: The input can contain 64 printable characters, which are the uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), and the special characters plus sign (+) and slash (/). Each line of the input contains a maximum of 76 characters, ended with '\r\n'.

Return value

TypeDescription
Promise<Uint8Array>Uint8Array obtained after asynchronous decoding.

Example

let that = new util.Base64Helper();
let array = 'TWFuaXNkaXN0aW5ndWlzaGVkbm90b25seWJ5aGlzcmVhc29uYnV0Ynl0aGlzc2luZ3VsYXJwYXNz\r\naW9uZnJvbW90aGVyYW5pbWFsc3doaWNoaXNhbHVzdG9mdGhlbWluZGV4Y2VlZHN0aGVzaG9ydHZl\r\naGVtZW5jZW9mYW55Y2FybmFscGxlYXN1cmU=\r\n';
that.decode(array, util.Type.MIME).then(val=>{
  // Add information as required.
})

Type10+

Enumerates the Base64 encoding formats.

System capability: SystemCapability.Utils.Lang

NameValueDescription
BASIC0Basic format.
MIME1MIME format.

types8+

Provides APIs to check different types of built-in objects, such as ArrayBuffer, Map, and Set, so as to avoid exceptions or crashes caused by type errors.

constructor8+

constructor()

A constructor used to create a Types object.

System capability: SystemCapability.Utils.Lang

Example

let type = new util.types();

isAnyArrayBuffer8+

isAnyArrayBuffer(value: Object): boolean

Checks whether the input value is of the ArrayBuffer type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the ArrayBuffer type; returns false otherwise.

Example

let that = new util.types();
let result = that.isAnyArrayBuffer(new ArrayBuffer(0));

isArrayBufferView8+

isArrayBufferView(value: Object): boolean

Checks whether the input value is of the ArrayBufferView type.

ArrayBufferView is a helper type representing any of the following: Int8Array, Int16Array, Int32Array, Uint8Array, Uint8ClampedArray, Uint32Array, Float32Array, Float64Array, and DataView.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the ArrayBufferView type; returns false otherwise.

Example

let that = new util.types();
let result = that.isArrayBufferView(new Int8Array([]));

isArgumentsObject8+

isArgumentsObject(value: Object): boolean

Checks whether the input value is of the arguments type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the arguments type; returns false otherwise.

Example

let that = new util.types();
function foo() {
    let result = that.isArgumentsObject(arguments);
}
let f = foo();

isArrayBuffer8+

isArrayBuffer(value: Object): boolean

Checks whether the input value is of the ArrayBuffer type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the ArrayBuffer type; returns false otherwise.

Example

let that = new util.types();
let result = that.isArrayBuffer(new ArrayBuffer(0));

isAsyncFunction8+

isAsyncFunction(value: Object): boolean

Checks whether the input value is an asynchronous function.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is an asynchronous function; returns false otherwise.

Example

let that = new util.types();
let result = that.isAsyncFunction(async () => {});

isBooleanObject8+

isBooleanObject(value: Object): boolean

Checks whether the input value is of the Boolean type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Boolean type; returns false otherwise.

Example

let that = new util.types();
let result = that.isBooleanObject(new Boolean(true));

isBoxedPrimitive8+

isBoxedPrimitive(value: Object): boolean

Checks whether the input value is of the Boolean, Number, String, or Symbol type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Boolean, Number, String, or Symbol type; returns false otherwise.

Example

let that = new util.types();
let result = that.isBoxedPrimitive(new Boolean(false));

isDataView8+

isDataView(value: Object): boolean

Checks whether the input value is of the DataView type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the DataView type; returns false otherwise.

Example

let that = new util.types();
const ab = new ArrayBuffer(20);
let result = that.isDataView(new DataView(ab));

isDate8+

isDate(value: Object): boolean

Checks whether the input value is of the Date type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Date type; returns false otherwise.

Example

let that = new util.types();
let result = that.isDate(new Date());

isExternal8+

isExternal(value: Object): boolean

Checks whether the input value is of the native external type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the native external type; returns false otherwise.

Example

let that = new util.types();
let result = that.isExternal(true);

isFloat32Array8+

isFloat32Array(value: Object): boolean

Checks whether the input value is of the Float32Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Float32Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isFloat32Array(new Float32Array());

isFloat64Array8+

isFloat64Array(value: Object): boolean

Checks whether the input value is of the Float64Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Float64Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isFloat64Array(new Float64Array());

isGeneratorFunction8+

isGeneratorFunction(value: Object): boolean

Checks whether the input value is a generator function.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a generator function; returns false otherwise.

Example

let that = new util.types();
let result = that.isGeneratorFunction(function* foo() {});

isGeneratorObject8+

isGeneratorObject(value: Object): boolean

Checks whether the input value is a generator object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a generator object; returns false otherwise.

Example

let that = new util.types();
function* foo() {}
const generator = foo();
let result = that.isGeneratorObject(generator);

isInt8Array8+

isInt8Array(value: Object): boolean

Checks whether the input value is of the Int8Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Int8Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isInt8Array(new Int8Array([]));

isInt16Array8+

isInt16Array(value: Object): boolean

Checks whether the input value is of the Int16Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Int16Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isInt16Array(new Int16Array([]));

isInt32Array8+

isInt32Array(value: Object): boolean

Checks whether the input value is of the Int32Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Int32Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isInt32Array(new Int32Array([]));

isMap8+

isMap(value: Object): boolean

Checks whether the input value is of the Map type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Map type; returns false otherwise.

Example

let that = new util.types();
let result = that.isMap(new Map());

isMapIterator8+

isMapIterator(value: Object): boolean

Checks whether the input value is of the MapIterator type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the MapIterator type; returns false otherwise.

Example

let that = new util.types();
const map : Map<number,number> = new Map();
let result = that.isMapIterator(map.keys());

isNativeError8+

isNativeError(value: Object): boolean

Checks whether the input value is of the Error type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Error type; returns false otherwise.

Example

let that = new util.types();
let result = that.isNativeError(new TypeError());

isNumberObject8+

isNumberObject(value: Object): boolean

Checks whether the input value is a number object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a number object; returns false otherwise.

Example

let that = new util.types();
let result = that.isNumberObject(new Number(0));

isPromise8+

isPromise(value: Object): boolean

Checks whether the input value is a promise.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a promise; returns false otherwise.

Example

let that = new util.types();
let result = that.isPromise(Promise.resolve(1));

isProxy8+

isProxy(value: Object): boolean

Checks whether the input value is a proxy.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a proxy; returns false otherwise.

Example

class Target{
}
let that = new util.types();
const target : Target = {};
const proxy = new Proxy(target, target);
let result = that.isProxy(proxy);

isRegExp8+

isRegExp(value: Object): boolean

Checks whether the input value is of the RegExp type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the RegExp type; returns false otherwise.

Example

let that = new util.types();
let result = that.isRegExp(new RegExp('abc'));

isSet8+

isSet(value: Object): boolean

Checks whether the input value is of the Set type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Set type; returns false otherwise.

Example

let that = new util.types();
let set : Set<number> = new Set();
let result = that.isSet(set);

isSetIterator8+

isSetIterator(value: Object): boolean

Checks whether the input value is of the SetIterator type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the SetIterator type; returns false otherwise.

Example

let that = new util.types();
const set : Set<number> = new Set();
let result = that.isSetIterator(set.keys());

isStringObject8+

isStringObject(value: Object): boolean

Checks whether the input value is a string object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a string object; returns false otherwise.

Example

let that = new util.types();
let result = that.isStringObject(new String('foo'));

isSymbolObjec8+

isSymbolObject(value: Object): boolean

Checks whether the input value is a symbol object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a symbol object; returns false otherwise.

Example

let that = new util.types();
const symbols = Symbol('foo');
let result = that.isSymbolObject(Object(symbols));

isTypedArray8+

isTypedArray(value: Object): boolean

Checks whether the input value is of the TypedArray type.

TypedArray is a helper type representing any of the following: Int8Array, Int16Array, Int32Array, Uint8Array, Uint8ClampedArray, Uint16Array, Uint32Array, Float32Array, Float64Array, and DataView.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the TypedArray type; returns false otherwise.

Example

let that = new util.types();
let result = that.isTypedArray(new Float64Array([]));

isUint8Array8+

isUint8Array(value: Object): boolean

Checks whether the input value is of the Uint8Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Uint8Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isUint8Array(new Uint8Array([]));

isUint8ClampedArray8+

isUint8ClampedArray(value: Object): boolean

Checks whether the input value is of the Uint8ClampedArray type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Uint8ClampedArray type; returns false otherwise.

Example

let that = new util.types();
let result = that.isUint8ClampedArray(new Uint8ClampedArray([]));

isUint16Array8+

isUint16Array(value: Object): boolean

Checks whether the input value is of the Uint16Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Uint16Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isUint16Array(new Uint16Array([]));

isUint32Array8+

isUint32Array(value: Object): boolean

Checks whether the input value is of the Uint32Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the Uint32Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isUint32Array(new Uint32Array([]));

isWeakMap8+

isWeakMap(value: Object): boolean

Checks whether the input value is of the WeakMap type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the WeakMap type; returns false otherwise.

Example

let that = new util.types();
let value : WeakMap<object,number> = new WeakMap();
let result = that.isWeakMap(value);

isWeakSet8+

isWeakSet(value: Object): boolean

Checks whether the input value is of the WeakSet type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the WeakSet type; returns false otherwise.

Example

let that = new util.types();
let result = that.isWeakSet(new WeakSet());

isBigInt64Array8+

isBigInt64Array(value: Object): boolean

Checks whether the input value is of the BigInt64Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the BigInt64Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isBigInt64Array(new BigInt64Array([]));

isBigUint64Array8+

isBigUint64Array(value: Object): boolean

Checks whether the input value is of the BigUint64Array type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the BigUint64Array type; returns false otherwise.

Example

let that = new util.types();
let result = that.isBigUint64Array(new BigUint64Array([]));

isModuleNamespaceObject8+

isModuleNamespaceObject(value: Object): boolean

Checks whether the input value is a module namespace object.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is a module namespace object; returns false otherwise.

Example

import url from '@ohos.url'
let that = new util.types();
let result = that.isModuleNamespaceObject(url);

isSharedArrayBuffer8+

isSharedArrayBuffer(value: Object): boolean

Checks whether the input value is of the SharedArrayBuffer type.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueObjectYesObject to check.

Return value

TypeDescription
booleanReturns true if the input value is of the SharedArrayBuffer type; returns false otherwise.

Example

let that = new util.types();
let result = that.isSharedArrayBuffer(new SharedArrayBuffer(0));

LruBuffer(deprecated)

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache9+ instead.

Attributes

System capability: SystemCapability.Utils.Lang

NameTypeReadableWritableDescription
lengthnumberYesNoTotal number of values in this buffer.

Example

let pro : util.LruBuffer<number,number>= new util.LruBuffer();
pro.put(2,10);
pro.put(1,8);
let result = pro.length;

constructor(deprecated)

constructor(capacity?: number)

A constructor used to create a LruBuffer instance. The default capacity of the buffer is 64.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.constructor9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
capacitynumberNoCapacity of the LruBuffer to create. The default value is 64.

Example

let lrubuffer : util.LruBuffer<number,number> = new util.LruBuffer();

updateCapacity(deprecated)

updateCapacity(newCapacity: number): void

Changes the LruBuffer capacity. If the new capacity is less than or equal to 0, an exception will be thrown.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.updateCapacity9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
newCapacitynumberYesNew capacity of the LruBuffer.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
let result = pro.updateCapacity(100);

toString(deprecated)

toString(): string

Obtains the string representation of this LruBuffer object.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.toString9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
stringString representation of this LruBuffer object.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
pro.get(2);
pro.remove(20);
let result = pro.toString();

getCapacity(deprecated)

getCapacity(): number

Obtains the capacity of this buffer.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.getCapacity9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberCapacity of this buffer.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
let result = pro.getCapacity();

clear(deprecated)

clear(): void

Clears key-value pairs from this buffer. The afterRemoval() method will be called to perform subsequent operations.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.clear9+ instead.

System capability: SystemCapability.Utils.Lang

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.length;
pro.clear();

getCreateCount(deprecated)

getCreateCount(): number

Obtains the number of return values for createDefault().

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.getCreateCount9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of return values for createDefault().

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(1,8);
let result = pro.getCreateCount();

getMissCount(deprecated)

getMissCount(): number

Obtains the number of times that the queried values are mismatched.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.getMissCount9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of times that the queried values are mismatched.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
pro.get(2);
let result = pro.getMissCount();

getRemovalCount(deprecated)

getRemovalCount(): number

Obtains the number of removals from this buffer.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.getRemovalCount9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of removals from the buffer.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
pro.updateCapacity(2);
pro.put(50,22);
let result = pro.getRemovalCount();

getMatchCount(deprecated)

getMatchCount(): number

Obtains the number of times that the queried values are matched.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.getMatchCount9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of times that the queried values are matched.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
pro.get(2);
let result = pro.getMatchCount();

getPutCount(deprecated)

getPutCount(): number

Obtains the number of additions to this buffer.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.getPutCount9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
numberNumber of additions to the buffer.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.getPutCount();

isEmpty(deprecated)

isEmpty(): boolean

Checks whether this buffer is empty.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.isEmpty9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
booleanReturns true if the cache does not contain any value.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.isEmpty();

get(deprecated)

get(key: K): V|undefined

Obtains the value of the specified key.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.get9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey based on which the value is queried.

Return value

TypeDescription
V | undefinedReturns the value of the key if a match is found in the buffer; returns undefined otherwise.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result  = pro.get(2);

put(deprecated)

put(key: K,value: V): V

Adds a key-value pair to this buffer.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.put9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey of the key-value pair to add.
valueVYesValue of the key-value pair to add.

Return value

TypeDescription
VReturns the existing value if the key already exists; returns the value added otherwise. If the key or value is null, an exception will be thrown.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
let result = pro.put(2,10);

values(deprecated)

values(): V[]

Obtains all values in this buffer, listed from the most to the least recently accessed.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.values9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
V []All values in the buffer, listed from the most to the least recently accessed.

Example

let pro : util.LruBuffer<number|string,number|string> = new util.LruBuffer();
pro.put(2,10);
pro.put(2,"anhu");
pro.put("afaf","grfb");
let result = pro.values();

keys(deprecated)

keys(): K[]

Obtains all keys in this buffer, listed from the most to the least recently accessed.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.keys9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
K []All keys in the buffer, listed from the most to the least recently accessed.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.keys();

remove(deprecated)

remove(key: K): V|undefined

Removes the specified key and its value from this buffer.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.remove9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey to remove.

Return value

TypeDescription
V | undefinedReturns an Optional object containing the removed key-value pair if the key exists in the buffer; returns an empty Optional object otherwise. If the key is null, an exception will be thrown.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.remove(20);

afterRemoval(deprecated)

afterRemoval(isEvict: boolean,key: K,value: V,newValue: V): void

Performs subsequent operations after a value is removed.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.afterRemoval9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
isEvictbooleanYesWhether the buffer capacity is insufficient. If the value is true, this API is called due to insufficient capacity.
keyKYesKey removed.
valueVYesValue removed.
newValueVYesNew value for the key if the put() method is called and the key to be added already exists. In other cases, this parameter is left blank.

Example

let arr : object = [];
class ChildLruBuffer<K, V> extends util.LruBuffer<K, V>
{
	constructor()
	{
		super();
	}
	afterRemoval(isEvict : boolean, key : K, value : V, newValue : V)
	{
		if (isEvict === false)
		{
			arr = [key, value, newValue];
		}
	}
}
let lru : ChildLruBuffer<number,number|null> = new ChildLruBuffer();
lru.afterRemoval(false,10,30,null);

contains(deprecated)

contains(key: K): boolean

Checks whether this buffer contains the specified key.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.contains9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey to check.

Return value

TypeDescription
booleanReturns true if the buffer contains the specified key; returns false otherwise.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.contains(20);

createDefault(deprecated)

createDefault(key: K): V

Creates a value if the value of the specified key is not available.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.createDefault9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
keyKYesKey of which the value is missing.

Return value

TypeDescription
VValue of the key.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
let result = pro.createDefault(50);

entries(deprecated)

entries(): IterableIterator<[K,V]>

Obtains a new iterator object that contains all key-value pairs in this object.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.entries9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
[K, V]Iterable array.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro.entries();

[Symbol.iterator](deprecated)

[Symbol.iterator](): IterableIterator<[K, V]>

Obtains a two-dimensional array in key-value pairs.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use LRUCache.Symbol.iterator9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
[K, V]Two-dimensional array in key-value pairs.

Example

let pro : util.LruBuffer<number,number> = new util.LruBuffer();
pro.put(2,10);
let result = pro[Symbol.iterator]();

Scope(deprecated)

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper9+ instead.

constructor(deprecated)

constructor(lowerObj: ScopeType, upperObj: ScopeType)

A constructor used to create a Scope object with the specified upper and lower limits.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.constructor9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
lowerObjScopeTypeYesLower limit of the Scope object.
upperObjScopeTypeYesUpper limit of the Scope object.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}
let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.Scope(tempLower, tempUpper);

toString(deprecated)

toString(): string

Obtains a string representation that contains this Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.toString9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
stringString representation containing the Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.Scope(tempLower, tempUpper);
let result = range.toString();

intersect(deprecated)

intersect(range: Scope): Scope

Obtains the intersection of this Scope and the given Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.intersect9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rangeScopeYesScope specified.

Return value

TypeDescription
ScopeIntersection of this Scope and the given Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.Scope(tempLower, tempUpper);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let rangeFir = new util.Scope(tempMiDF, tempMidS);
let result = range.intersect(rangeFir );

intersect(deprecated)

intersect(lowerObj:ScopeType,upperObj:ScopeType):Scope

Obtains the intersection of this Scope and the given lower and upper limits.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.intersect9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
lowerObjScopeTypeYesLower limit.
upperObjScopeTypeYesUpper limit.

Return value

TypeDescription
ScopeIntersection of this Scope and the given lower and upper limits.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let range = new util.Scope(tempLower, tempUpper);
let result = range.intersect(tempMiDF, tempMidS);

getUpper(deprecated)

getUpper(): ScopeType

Obtains the upper limit of this Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.getUpper9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
ScopeTypeUpper limit of this Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.Scope(tempLower, tempUpper);
let result = range.getUpper();

getLower(deprecated)

getLower(): ScopeType

Obtains the lower limit of this Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.getLower9+ instead.

System capability: SystemCapability.Utils.Lang

Return value

TypeDescription
ScopeTypeLower limit of this Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.Scope(tempLower, tempUpper);
let result = range.getLower();

expand(deprecated)

expand(lowerObj: ScopeType,upperObj: ScopeType): Scope

Obtains the union set of this Scope and the given lower and upper limits.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.expand9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
lowerObjScopeTypeYesLower limit.
upperObjScopeTypeYesUpper limit.

Return value

TypeDescription
ScopeUnion set of this Scope and the given lower and upper limits.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let range = new util.Scope(tempLower, tempUpper);
let result = range.expand(tempMiDF, tempMidS);

expand(deprecated)

expand(range: Scope): Scope

Obtains the union set of this Scope and the given Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.expand9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rangeScopeYesScope specified.

Return value

TypeDescription
ScopeUnion set of this Scope and the given Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let tempMidS = new Temperature(39);
let range = new util.Scope(tempLower, tempUpper);
let rangeFir = new util.Scope(tempMiDF, tempMidS);
let result = range.expand(rangeFir);

expand(deprecated)

expand(value: ScopeType): Scope

Obtains the union set of this Scope and the given value.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.expand9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueScopeTypeYesValue specified.

Return value

TypeDescription
ScopeUnion set of this Scope and the given value.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let range = new util.Scope(tempLower, tempUpper);
let result = range.expand(tempMiDF);

contains(deprecated)

contains(value: ScopeType): boolean

Checks whether a value is within this Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.contains9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueScopeTypeYesValue specified.

Return value

TypeDescription
booleanReturns true if the value is within this Scope; returns false otherwise.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let range = new util.Scope(tempLower, tempUpper);
let result = range.contains(tempMiDF);

contains(deprecated)

contains(range: Scope): boolean

Checks whether a range is within this Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.contains9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
rangeScopeYesScope specified.

Return value

TypeDescription
booleanReturns true if the range is within this Scope; returns false otherwise.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let range = new util.Scope(tempLower, tempUpper);
let tempLess = new Temperature(20);
let tempMore = new Temperature(45);
let rangeSec = new util.Scope(tempLess, tempMore);
let result = range.contains(rangeSec);

clamp(deprecated)

clamp(value: ScopeType): ScopeType

Limits a value to this Scope.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use ScopeHelper.clamp9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
valueScopeTypeYesValue specified.

Return value

TypeDescription
ScopeTypeReturns lowerObj if the specified value is less than the lower limit; returns upperObj if the specified value is greater than the upper limit; returns the specified value if it is within this Scope.

Example

class Temperature{
  private readonly _temp: number;
  constructor(value : number) {
    this._temp = value;
  }
  compareTo(value : Temperature ) {
    return this._temp >= value.getTemp();
  }
  getTemp() {
    return this._temp;
  }
  toString() : string {
    return this._temp.toString();
  }
}

let tempLower = new Temperature(30);
let tempUpper = new Temperature(40);
let tempMiDF = new Temperature(35);
let range = new util.Scope(tempLower, tempUpper);
let result = range.clamp(tempMiDF);

Base64(deprecated)

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper9+ instead.

constructor(deprecated)

constructor()

A constructor used to create a Base64 object.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.constructor9+ instead.

System capability: SystemCapability.Utils.Lang

Example

let base64 = new  util.Base64();

encodeSync(deprecated)

encodeSync(src: Uint8Array): Uint8Array

Encodes the input content.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.encodeSync9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode.

Return value

TypeDescription
Uint8ArrayUint8Array encoded.

Example

let that = new util.Base64();
let array = new Uint8Array([115,49,51]);
let result = that.encodeSync(array);

encodeToStringSync(deprecated)

encodeToStringSync(src: Uint8Array): string

Encodes the input content.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.encodeToStringSync9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode.

Return value

TypeDescription
stringString encoded from the Uint8Array.

Example

let that = new util.Base64();
let array = new Uint8Array([115,49,51]);
let result = that.encodeToStringSync(array);

decodeSync(deprecated)

decodeSync(src: Uint8Array|string): Uint8Array

Decodes the input content.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.decodeSync9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8Array | stringYesUint8Array or string to decode.

Return value

TypeDescription
Uint8ArrayUint8Array decoded.

Example

let that = new util.Base64();
let buff = 'czEz';
let result = that.decodeSync(buff);

encode(deprecated)

encode(src: Uint8Array): Promise<Uint8Array>

Encodes the input content asynchronously.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.encode9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode asynchronously.

Return value

TypeDescription
Promise<Uint8Array>Uint8Array obtained after asynchronous encoding.

Example

let that = new util.Base64();
let array = new Uint8Array([115,49,51]);
let rarray = new Uint8Array([99,122,69,122]);
that.encode(array).then(val=>{    
    for (let i = 0; i < rarray.length; i++) {        
        console.log(val[i].toString())
    }
})

encodeToString(deprecated)

encodeToString(src: Uint8Array): Promise<string>

Encodes the input content asynchronously.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.encodeToString9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8ArrayYesUint8Array to encode asynchronously.

Return value

TypeDescription
Promise<string>String obtained after asynchronous encoding.

Example

let that = new util.Base64();
let array = new Uint8Array([115,49,51]);
that.encodeToString(array).then(val=>{    
    console.log(val)
})

decode(deprecated)

decode(src: Uint8Array|string): Promise<Uint8Array>

Decodes the input content asynchronously.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use Base64Helper.decode9+ instead.

System capability: SystemCapability.Utils.Lang

Parameters

NameTypeMandatoryDescription
srcUint8Array | stringYesUint8Array or string to decode asynchronously.

Return value

TypeDescription
Promise<Uint8Array>Uint8Array obtained after asynchronous decoding.

Example

let that = new util.Base64();
let array = new Uint8Array([99,122,69,122]);
let rarray = new Uint8Array([115,49,51]);
that.decode(array).then(val=>{    
    for (let i = 0; i < rarray.length; i++) {        
        console.log(val[i].toString())
    }
})

你可能感兴趣的鸿蒙文章

harmony 鸿蒙APIs

harmony 鸿蒙System Common Events (To Be Deprecated Soon)

harmony 鸿蒙System Common Events

harmony 鸿蒙API Reference Document Description

harmony 鸿蒙Enterprise Device Management Overview (for System Applications Only)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager)

harmony 鸿蒙@ohos.distributedBundle (Distributed Bundle Management)

harmony 鸿蒙@ohos.bundle (Bundle)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (EnterpriseAdminExtensionAbility)

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/e36244c7187a42d5900610376a00ae94