主页
2024年8月9日 02:50:16
Global 全局方法 parseInt(string, radix?) parseInt(string, radix) 解析一个字符串并返回指定基数的十进制整数,radix 是 2-36 之间的整数,表示被解析字符串的基数。 参数 名称 类型 必填 默认值 兼容性 描述 string string 是 - - 要被解析的值。字符串开头的空白符将会被忽略。(注意:只接收字符串类型的参数,其他类型将编译报错。) radix number 否 - - 从 2 到 36 的整数,表示进制的基数。例如指定 16 表示被解析值是十六进制数。如果超出这个范围,将返回 NaN。假如指定 0 或未指定,基数将会根据字符串的值进行推算。注意,推算的结果不会永远是默认值 10! 返回值 类型 描述 number 从给定的字符串中解析出的一个整数,或者 NaN。当radix 小于 2 或大于 36,或第一个非空格字符不能转换为数字时返回 NAN。 注意:返回值类型一定是number,不是平台专有数字类型(如Int、Float、Double等)。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug 注意 该方法仅支持对 string 类型的解析,传入其他类型会编译报错。字符串开头的空白符将会被忽略。 radix 参数可不传,默认值为 10。但是不可传入 null, 传入 null 会编译报错。 radix 小于 2 或大于 36,或第一个非空格字符不能转换为数字将返回 NAN。第一个非空格字符不能转换为数字是指在指定的 radix 下,第一个非空字符不能转成数字,示例如下: const a = parseInt("a"); // 结果为 NAN const b = parseInt("a", 16) // 结果为 10 (原因:16进制下 a 是合法字符) const c = parseInt("546", 2) // 结果为 NAN (原因:除了“0、1”外,其他数字都不是有效二进制数字) 复制代码 有关 radix 缺省( radix 为 0 或者未指定)时的自动推导: 如果输入的 string 以 0x 或 0X(一个 0,后面是小写或大写的 X)开头,那么 radix 被假定为 16,字符串的其余部分被当做十六进制数去解析。 如果输入的 string 以任何其他值开头,radix 是 10 (十进制)。 如果 parseInt 遇到的字符不是指定 radix 参数中的数字,它将忽略该字符以及所有后续字符,并返回到该点为止已解析的整数值。parseInt 将数字截断为整数值。允许前导和尾随空格。 某些数字在其字符串表示形式中使用 e 字符(例如 6.022×23 表示 6.022e23 ),因此当对非常大或非常小的数字使用数字时,使用 parseInt 截断数字将产生意外结果。如:parseInt("6.022e23") == 6。 特别注意: 当要解析的字符串表示的数字很大(超过最大的整数 9223372036854775807 )时,将以科学计数法进行表示,此时会丢失精度( iOS 和 Android 结果一致,和 JS 结果相比有误差)。(此特性将在 HBuilderX 3.93+ 生效,HBuilderX 3.92 及以下版本可表示的数字的最大值为最大的 Int 值,iOS 平台为 9223372036854775807,Android 平台 为 2147483647,超过此值 iOS 下出现整型溢出,Android 下会返回 NAN )。 parseFloat(string) parseFloat() 函数解析一个参数(直接收字符串类型的参数,其他类型编译报错)并返回一个浮点数。 参数 名称 类型 必填 默认值 兼容性 描述 string string 是 - - 需要被解析成为浮点数的值。 返回值 类型 描述 number 给定值被解析成浮点数。如果给定值不能被转换成数值,则会返回 NaN。 注意:返回值类型一定是number,不是平台专有数字类型(如Int、Float、Double等)。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug 注意: 该方法仅支持对 string 类型的解析,传入其他类型会编译报错。 isNaN(number) isNaN() 函数用来确定一个值是否为NaN 。注:isNaN函数内包含一些非常有趣的规则;你也可以使用 ECMAScript 2015 中定义的 Number.isNaN() 来判断。 参数 名称 类型 必填 默认值 兼容性 描述 number number 是 - - 要被检测的值。 返回值 类型 描述 boolean 如果给定值为 NaN则返回值为true;否则为false。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug isFinite(number) isFinite() 函数用来判断被传入的参数值是否为一个有限数值(finite number)。 参数 名称 类型 必填 默认值 兼容性 描述 number number 是 - - 要被检测的值。 返回值 类型 描述 boolean 如果参数是 NaN,正无穷大或者负无穷大,会返回false,其他返回 true。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug decodeURI(encodedURI) decodeURI() 函数能解码由encodeURI 创建或其他流程得到的统一资源标识符(URI)。 参数 名称 类型 必填 默认值 兼容性 描述 encodedURI string 是 - - 一个完整的编码过的 URI 返回值 类型 描述 string|null 返回一个给定编码统一资源标识符 (URI) 的未编码版本的新字符串, 当 encodedURI 包含无效字符序列时,会返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.91 4.11 3.91 3.91 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug decodeURIComponent(encodedURIComponent) decodeURIComponent() 方法用于解码由 encodeURIComponent 方法或者其他类似方法编码的部分统一资源标识符(URI)。 参数 名称 类型 必填 默认值 兼容性 描述 encodedURIComponent string 是 - - 编码后的部分 URI 返回值 类型 描述 string|null 一个解码后的统一资源标识符(URI)字符串,处理前的 URI 经过了给定格式的编码。当 encodedURI 包含无效字符序列时,会返回null. 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.91 4.11 3.91 3.91 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug encodeURI(uri) encodeURI() 函数通过将特定字符的每个实例替换为一个、两个、三或四转义序列来对统一资源标识符 (URI) 进行编码 (该字符的 UTF-8 编码仅为四转义序列) 由两个 "代理" 字符组成)。 参数 名称 类型 必填 默认值 兼容性 描述 uri string 是 - - 一个完整的 URI。 返回值 类型 描述 string|null 一个新字符串,表示提供的字符串编码为统一资源标识符 (URI)。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.91 4.11 3.91 3.91 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug encodeURIComponent(uriComponent) encodeURIComponent() 函数通过将特定字符的每个实例替换成代表字符的 UTF-8 编码的一个、两个、三个或四个转义序列来编码 URI(只有由两个“代理”字符组成的字符会被编码为四个转义序列)。与 encodeURI() 相比,此函数会编码更多的字符,包括 URI 语法的一部分。 参数 名称 类型 必填 默认值 兼容性 描述 uriComponent string 是 - - 要被检测的 string 值。 返回值 类型 描述 string|null 原字串作为 URI 组成部分被被编码后的新字符串。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.91 4.11 3.91 3.91 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug atob(encodedData:string):string atob() 函数会对经过 Base64 编码的字符串进行解码 参数 名称 类型 必填 默认值 兼容性 描述 encodedData string 是 - - 一个包含 base64 编码数据的二进制字符串(即字符串中的每个字符都被视为一字节的二进制数据)。 返回值 类型 描述 string 从 encodedData 解码出来的 ASCII 字符串 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app √ 4.25 x 4.25 x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug btoa(stringToEncode:string):string btoa() 方法可以将一个二进制字符串(例如,将字符串中的每一个字节都视为一个二进制数据字节)编码为 Base64 编码的 ASCII 字符串 参数 名称 类型 必填 默认值 兼容性 描述 stringToEncode string 是 - - 一个需要编码的二进制字符串 返回值 类型 描述 string 一个包含 stringToEncode 的 Base64 表示的 ASCII 字符串。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app √ 4.25 x 4.25 x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug
uniappx2024年8月9日 02:49:51
Console 静态方法 debug(...data) 在控制台打印 debug 日志 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - 要输出的对象列表。按传参的顺序把对象输出到控制台。 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - error(...data) 在控制台打印 error 日志 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - 要输出的对象列表。按传参的顺序把对象输出到控制台。 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - info(...data) 在控制台打印 info 日志 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - 要输出的对象列表。按传参的顺序把对象输出到控制台。 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - log(...data) 在控制台打印 log 日志 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - 要输出的对象列表。按传参的顺序把对象输出到控制台。 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - warn(...data) 在控制台打印 warn 日志 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - 要输出的对象列表。按传参的顺序把对象输出到控制台。 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - assert(condition?, ...data) 如果断言为 false,则将一个错误消息写入控制台。如果断言是 true,没有任何反应。 参数 名称 类型 必填 默认值 兼容性 描述 condition boolean 否 - - - data (any | null)[] 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - clear() console.clear() 方法清空控制台,但前提是该控制台允许清空。 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - count(label?) console.count() 方法会记录调用 count() 的次数。 参数 名称 类型 必填 默认值 兼容性 描述 label string 否 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - countReset(label?) 重置计数器。此函数有一个可选参数 label。 参数 名称 类型 必填 默认值 兼容性 描述 label string 否 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - dir(item?, options?) console.dir() 方法可以显示指定 JavaScript 对象的属性列表,并以交互式的形式展现。 参数 名称 类型 必填 默认值 兼容性 描述 item any | null 否 - - options any | null 否 - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - dirxml(...data) 显示一个明确的 XML/HTML 元素的包括所有后代元素的交互树。 非标准: 该特性是非标准的,请尽量不要在生产环境中使用它! 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - group(...data) console.group() 方法在控制台上创建一个新的分组。随后输出到控制台上的内容都会被添加一个缩进,表示该内容属于当前分组,直到调用 console.groupEnd() 之后,当前分组结束。 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - groupCollapsed(...data) console.groupCollapsed() 方法在控制台上创建一个新的分组。 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - groupEnd() 在控制台中退出一格缩进 (结束分组). 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - table(tabularData?, properties?) 将数据以表格的形式显示。 参数 名称 类型 必填 默认值 兼容性 描述 tabularData any | null 否 - - properties string[] 否 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - time(label?) 你可以启动一个计时器来跟踪某一个操作的占用时长。每一个计时器必须拥有唯一的名字,页面中最多能同时运行 10,000 个计时器。 参数 名称 类型 必填 默认值 兼容性 描述 label string 否 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - timeEnd(label?) 停止一个通过 console.time() 启动的计时器 非标准: 该特性是非标准的,请尽量不要在生产环境中使用它! 参数 名称 类型 必填 默认值 兼容性 描述 label string 否 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - timeLog(label?, ...data) 在控制台输出计时器的值,该计时器必须已经通过 console.time() 启动。 参数 名称 类型 必填 默认值 兼容性 描述 label string 否 - - - data (any | null)[] 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - timeStamp(label?) 非标准: 该特性是非标准的,请尽量不要在生产环境中使用它! 参数 名称 类型 必填 默认值 兼容性 描述 label string 否 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - trace(...data) 向控制台 输出一个堆栈跟踪。 参数 名称 类型 必填 默认值 兼容性 描述 data (any | null)[] 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug
uniappx2024年8月9日 02:49:35
Timers 全局方法 setInterval(handler, timeout?, ...arguments) setInterval() 方法重复调用一个函数或执行一个代码片段,在每次调用之间具有固定的时间间隔。 它返回一个 interval ID,该 ID 唯一地标识时间间隔,因此你可以稍后通过调用 clearInterval() 来移除定时器。 参数 名称 类型 必填 默认值 兼容性 描述 handler string | Function 是 - - - timeout number 否 - - - arguments any[] 是 - - - 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug setTimeout(handler, timeout?, ...arguments) 全局的 setTimeout() 方法设置一个定时器,一旦定时器到期,就会执行一个函数或指定的代码片段。 参数 名称 类型 必填 默认值 兼容性 描述 handler string | Function 是 - - - timeout number 否 - - - arguments any[] 是 - - - 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug clearInterval(id) clearInterval() 方法可取消先前通过 setInterval() 设置的重复定时任务。 参数 名称 类型 必填 默认值 兼容性 描述 id number | undefined 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug clearTimeout(id) clearTimeout() 方法取消了先前通过调用setTimeout()建立的定时器 参数 名称 类型 必填 默认值 兼容性 描述 id number | undefined 是 - - - 返回值 类型 void 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug 示例代码 <script> export default { data() { return { } }, methods: { timerSetTimeout() { // 定义 setTimeout 返回值 let timerID = 0; // 启动 setTimeout 并更新 timerID timerID = setTimeout(() => { // 执行一次 console.log('setTimeout', timerID); }, 1000) // 取消 // clearTimeout(timerID) }, timerSetInterval() { // 定义 setInterval 返回值 let timerID = 0; // 启动 setInterval 并更新 timerID timerID = setInterval(() => { // 周期执行 (1000毫秒) console.log('setInterval', timerID); // 取消 clearInterval(timerID) }, 1000) } } } </script> 复制代码 Android平台差异 需要注意:JS环境中只有一个线程,所以 setTimeout/setInterval 执行任务代码的线程和 调用 setTimeout/setInterval 总是同一个线程。 但是Android平台需要分两种情况: 如果在主线程/dom 线程 等具备Looper 环境的线程调用setTimeout/setInterval: 那么可以确保 任务代码执行的线程 和调用setTimeout/setInterval的线程 是同一个线程。 如果在匿名线程等 不具备 Looper 环境的线程中调用setTimeout/setInterval: 任务代码不会和 调用setTimeout/setInterval的线程 保持同一线程。 关于 Android系统Looper的更多介绍
uniappx2024年8月9日 02:49:03
Error 当运行时错误产生时,Error 对象会被抛出。Error 对象也可用于用户自定义的异常的基础对象。 实例属性 message 错误消息。对于用户创建的 Error 对象,这是构造函数的第一个参数提供的字符串。 cause 导致该错误的具体原始原因。在捕获错误时,我们可能会使用更具体或更加实用的信息对错误进行包装,再将其重新抛出。cause 属性就用于这一场景,以便仍然可以访问原始的错误。 创建 Error 可通过以下方式创建 Error: // 直接创建 let error = new Error(); // 指定 message: let err = new Error('Whoops!'); // 指定 message 和 cause: let otherError = new Error("Connecting to database failed.", { cause: err }); 复制代码 Bug & Tips 目前 Error 类型编译到 kotlin 为 io.dcloud.uts.UTSError
uniappx2024年8月9日 02:48:53
RegExp RegExp 对象用于将文本与一个模式匹配。 Constructor(pattern) 用于创建正则表达式对象,该对象用于将文本与一个模式匹配。 参数 名称 类型 必填 默认值 兼容性 描述 pattern RegExp | string 是 - - 正则表达式的文本,也可以是另一个 RegExp 对象或文字。 返回值 类型 RegExp 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - Constructor(pattern, flags?) 用于创建正则表达式对象,该对象用于将文本与一个模式匹配。 参数 名称 类型 必填 默认值 兼容性 描述 pattern string 是 - - 正则表达式的文本,也可以是另一个 RegExp 对象或文字。 flags string 否 - - 如果指定,flags 是包含要添加的标志的字符串。 返回值 类型 RegExp 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 实例属性 flags 返回一个字符串,由当前正则表达式对象的标志组成。此属性是一个只读属性 此字符串中的字符按以下顺序排序和连接: - "g" for global - "i" for ignoreCase - "m" for multiline - "u" for unicode - "y" for sticky 如果没有设置标志,则该值为空字符串。 console.log(/foo/ig.flags); // expected output: "gi" console.log(/bar/myu.flags); // expected output: "muy" 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - source 返回一个值为当前正则表达式对象的模式文本的字符串,该字符串不会包含正则字面量两边的斜杠以及任何的标志字符。 const regex1 = /fooBar/ig; console.log(regex1.source); // expected output: "fooBar" console.log(new RegExp().source); // expected output: "(?:)" 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - global 表明正则表达式是否使用了 "g" 标志。global 是一个正则表达式实例的只读属性。 var regex = new RegExp("foo", "g") console.log(regex.global) // true // expected output: "muy" 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - ignoreCase 表明正则表达式是否使用了 "i" 标志。ignoreCase 是正则表达式实例的只读属性。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - multiline 表明正则表达式是否使用了 "m" 标志。multiline 是正则表达式实例的一个只读属性。 var regex = new RegExp("foo", "m"); console.log(regex.multiline); // expected output: true 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - lastIndex 正则表达式的一个可读可写的整型属性,用来指定下一次匹配的起始索引。 const regex1 = new RegExp('foo', 'g'); const str1 = 'table football, foosball'; regex1.test(str1); console.log(regex1.lastIndex); // expected output: 9 regex1.test(str1); console.log(regex1.lastIndex); // expected output: 19 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 实例方法 exec(string) 在一个指定字符串中执行一个搜索匹配。返回一个结果数组或 null。 参数 名称 类型 必填 默认值 兼容性 描述 string string 是 - - 要匹配正则表达式的字符串。 返回值 类型 描述 RegExpExecArray | null 如果匹配失败,exec() 方法返回 null,并将正则表达式的 lastIndex 重置为 0。如果匹配成功,exec() 方法返回一个数组,并更新正则表达式对象的 lastIndex 属性。完全匹配成功的文本将作为返回数组的第一项,从第二项起,后续每项都对应一个匹配的捕获组。 const regex1 = RegExp('foo', 'g'); const str1 = 'table football, foosball'; let array1 = regex1.exec(str1); while ((array1) !== null) { console.log(`Found ${array1[0]}. Next starts at ${regex1.lastIndex}.`); // expected output: "Found foo. Next starts at 9." // expected output: "Found foo. Next starts at 19." array1 = regex1.exec(str1); } 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - test(string) 执行一个检索,用来查看正则表达式与指定的字符串是否匹配。返回 true 或 false。 参数 名称 类型 必填 默认值 兼容性 描述 string string 是 - - 用来与正则表达式匹配的字符串。 返回值 类型 描述 boolean 如果正则表达式与指定的字符串匹配,返回true;否则false。如果正则表达式设置了全局标志,test() 的执行会改变正则表达式 lastIndex属性。连续的执行test()方法,后续的执行将会从 lastIndex 处开始匹配字符串。 const str = 'table football'; const regex = new RegExp('foo'); const globalRegex = new RegExp('foo*', 'g'); console.log(regex.test(str)); // expected output: true console.log(globalRegex.lastIndex); // expected output: 0 console.log(globalRegex.test(str)); // expected output: true console.log(globalRegex.lastIndex); // expected output: 9 console.log(globalRegex.test(str)); // expected output: false 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug Bug & Tips 目前 RegExp 类型编译到 kotlin 为 io.dcloud.uts.UTSRegExp
uniappx2024年8月9日 02:48:41
Promise Promise 对象表示异步操作最终的完成(或失败)以及其结果值。 Constructor(fn) 创建一个新的 Promise 对象。该构造函数主要用于封装还没有添加 promise 支持的函数。 参数 名称 类型 必填 默认值 兼容性 描述 fn (resolve: (value: T) => void, reject: (reason?: any) => void) => void 是 - - 在构造函数中执行的 function。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x Constructor(fn)1 创建一个新的 Promise 对象。该构造函数主要用于封装还没有添加 promise 支持的函数。 参数 名称 类型 必填 默认值 兼容性 描述 fn (resolve: (value: T) => void) => void 是 - - 在构造函数中执行的 function。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x 实例方法 then() 将一个兑现处理器和拒绝处理器附加到 Promise 上,并返回一个新的 Promise,解决为调用处理器得到的返回值,或者如果 Promise 没有被处理(即相关处理器 onFulfilled 或 onRejected 不是函数),则以原始敲定值解决。 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x then(onFulfilled, onRejected?)1 将一个兑现处理器和拒绝处理器附加到 Promise 上,并返回一个新的 Promise,解决为调用处理器得到的返回值,或者如果 Promise 没有被处理(即相关处理器 onFulfilled 或 onRejected 不是函数),则以原始敲定值解决。 参数 名称 类型 必填 默认值 兼容性 描述 onFulfilled () => any 是 - - 一个在此 Promise 对象被兑现时异步执行的函数。它的返回值将成为 then() 返回的 Promise 对象的兑现值。 onRejected (...args?: any) => any | null 否 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x then(onFulfilled, onRejected?)2 将一个兑现处理器和拒绝处理器附加到 Promise 上,并返回一个新的 Promise,解决为调用处理器得到的返回值,或者如果 Promise 没有被处理(即相关处理器 onFulfilled 或 onRejected 不是函数),则以原始敲定值解决。 参数 名称 类型 必填 默认值 兼容性 描述 onFulfilled () => Promise<any> 是 - - 一个在此 Promise 对象被兑现时异步执行的函数。它的返回值将成为 then() 返回的 Promise 对象的兑现值。 onRejected (...args?: any) => any | null 否 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x then(onFulfilled, onRejected?)3 将一个兑现处理器和拒绝处理器附加到 Promise 上,并返回一个新的 Promise,解决为调用处理器得到的返回值,或者如果 Promise 没有被处理(即相关处理器 onFulfilled 或 onRejected 不是函数),则以原始敲定值解决。 参数 名称 类型 必填 默认值 兼容性 描述 onFulfilled (res: T) => any 是 - - 一个在此 Promise 对象被兑现时异步执行的函数。它的返回值将成为 then() 返回的 Promise 对象的兑现值。 onRejected (...args?: any) => any | null 否 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x then(onFulfilled, onRejected?)4 将一个兑现处理器和拒绝处理器附加到 Promise 上,并返回一个新的 Promise,解决为调用处理器得到的返回值,或者如果 Promise 没有被处理(即相关处理器 onFulfilled 或 onRejected 不是函数),则以原始敲定值解决。 参数 名称 类型 必填 默认值 兼容性 描述 onFulfilled (res: T) => Promise<any> 是 - - 一个在此 Promise 对象被兑现时异步执行的函数。它的返回值将成为 then() 返回的 Promise 对象的兑现值。 onRejected (...args?: any) => any | null 否 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x catch() 将一个拒绝处理回调函数附加到 Promise 上,并返回一个新的 Promise,如果回调被调用,则解决为回调的返回值,如果 Promise 被兑现,解决为其原始兑现值。 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x catch(onRejected)1 将一个拒绝处理回调函数附加到 Promise 上,并返回一个新的 Promise,如果回调被调用,则解决为回调的返回值,如果 Promise 被兑现,解决为其原始兑现值。 参数 名称 类型 必填 默认值 兼容性 描述 onRejected () => any 是 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x catch(onRejected)2 将一个拒绝处理回调函数附加到 Promise 上,并返回一个新的 Promise,如果回调被调用,则解决为回调的返回值,如果 Promise 被兑现,解决为其原始兑现值。 参数 名称 类型 必填 默认值 兼容性 描述 onRejected () => Promise<any> 是 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x catch(onRejected)3 将一个拒绝处理回调函数附加到 Promise 上,并返回一个新的 Promise,如果回调被调用,则解决为回调的返回值,如果 Promise 被兑现,解决为其原始兑现值。 参数 名称 类型 必填 默认值 兼容性 描述 onRejected (res?: any) => any 是 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x catch(onRejected)4 将一个拒绝处理回调函数附加到 Promise 上,并返回一个新的 Promise,如果回调被调用,则解决为回调的返回值,如果 Promise 被兑现,解决为其原始兑现值。 参数 名称 类型 必填 默认值 兼容性 描述 onRejected (res?: any) => Promise<any> 是 - - 一个在此 Promise 对象被拒绝时异步执行的函数。它的返回值将成为 catch() 返回的 Promise 对象的兑现值。 返回值 类型 Promise<R> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x finally(callback) 将一个处理器附加到 Promise 上,并返回一个新的 Promise,当原始 Promise 被解决时解决。无论 Promise 是否被兑现还是被拒绝,处理器都会在 Promise 敲定时被调用。 参数 名称 类型 必填 默认值 兼容性 描述 (...args?: any) => any 是 - - - 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x resolve() 返回一个新的 Promise 对象,该对象以给定的值兑现。 返回值 类型 Promise<void> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x resolve(value)1 返回一个新的 Promise 对象,该对象以给定的值兑现。 参数 名称 类型 必填 默认值 兼容性 描述 value T | null 是 - - 一个兑现的值。 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x resolve(value)_2 返回一个新的 Promise 对象,该对象以给定的值兑现。 参数 名称 类型 必填 默认值 兼容性 描述 value Promise<T> | null 是 - - 一个 Promise。 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x reject(value?) 返回一个新的 Promise 对象,该对象以给定的原因拒绝。 参数 名称 类型 必填 默认值 兼容性 描述 value any | null 否 - - 一个拒绝的原因。 返回值 类型 Promise<never> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x all(arr) 接受一个 Promise 可迭代对象作为输入,并返回单个 Promise。返回的 Promise 在所有输入的 Promise 都兑现时(包括传入的可迭代对象为空时)被兑现,其值为一个包含所有兑现值的数组。如果输入的任何 Promise 被拒绝,返回的 Promise 也会被拒绝,并返回第一个拒绝的原因。 参数 名称 类型 必填 默认值 兼容性 描述 arr Array<Promise><Promise<T>> 是 - - 一个 Promise 数组。 返回值 类型 Promise<Array<T>> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x race(arr) 接受一个 Promise 可迭代对象作为输入,并返回单个 Promise。返回的 Promise 与第一个敲定的 Promise 的最终状态保持一致。 参数 名称 类型 必填 默认值 兼容性 描述 arr Array<Promise><Promise<T>> 是 - - 一个 Promise 数组。 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x any(arr) 接受一个 Promise 可迭代对象作为输入,并返回单个 Promise。返回的 Promise 在任何输入的 Promise 兑现时兑现,其值为第一个兑现的值。如果所有输入的 Promise 都被拒绝(包括传入的可迭代对象为空时),返回的 Promise 将以带有一个包含拒绝原因的数组的 AggregateError 拒绝。 参数 名称 类型 必填 默认值 兼容性 描述 arr Array<Promise><Promise<T>> 是 - - 一个 Promise 数组。 返回值 类型 Promise<T> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x allSettled(arr) 接受一个 Promise 可迭代对象作为输入,并返回单个 Promise。返回的 Promise 在所有输入的 Promise 都敲定时兑现(包括传入的可迭代对象为空时),其值为一个描述每个 Promise 结果的对象数组。 参数 名称 类型 必填 默认值 兼容性 描述 arr Array<Promise><Promise<T>> 是 - - 一个 Promise 数组。 返回值 类型 Promise<Array<PromiseSettledResult<T>>> 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 3.9 3.9 x x 参见 相关 Bug Bug & Tips 目前 Promise 类型编译到 kotlin 为 io.dcloud.uts.UTSPromise 编译到swift时暂不支持。但在uvue里因为iOS默认js驱动所以可以使用Promise
uniappx2024年8月9日 02:48:20
Math Math 是一个内置对象,它拥有一些数学常数属性和数学函数方法。 静态属性 E Math.E 属性表示自然对数的底数(或称为基数),e,约等于 2.718。 function getNapier():number { return Math.E; } console.log(getNapier()); // expected output: 2.718281828459045 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - LN10 Math.LN10 属性表示 10 的自然对数,约为 2.302 function getNatLog10():number { return Math.LN10; } console.log(getNatLog10()); // expected output: 2.302585092994046 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - LN2 Math.LN2 属性表示 2 的自然对数,约为 0.693 function getNatLog2():number { return Math.LN2; } console.log(getNatLog2()); // expected output: 0.6931471805599453 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - LOG2E Math.LOG2E 属性表示以 2 为底数,e 的对数,约为 1.442 function getLog2e():number { return Math.LOG2E; } console.log(getLog2e()); // expected output: 1.4426950408889634 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - LOG10E Math.LOG10E 属性表示以 10 为底数,e 的对数,约为 0.434 function getLog10e():number { return Math.LOG10E; } console.log(getLog10e()); // expected output: 0.4342944819032518 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - PI Math.PI 表示一个圆的周长与直径的比例,约为 3.14159 function calculateCircumference (radius:number):number { return 2 Math.PI radius; } console.log(calculateCircumference(1)); // expected output: 6.283185307179586 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - SQRT12 Math.SQRT12 属性表示 1/2 的平方根,约为 0.707 function getRoot12():number { return Math.SQRT12; } console.log(getRoot1_2()); // expected output: 0.7071067811865476 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - SQRT2 Math.SQRT2 属性表示 2 的平方根,约为 1.414 function getRoot2():number { return Math.SQRT2; } console.log(getRoot2()); // expected output: 1.4142135623730951 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 静态方法 clz32(x) Math.clz32() 函数返回一个数字在转换成 32 无符号整形数字的二进制形式后,开头的 0 的个数 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数字。 返回值 类型 number console.log(Math.clz32(1)); // expected output: 31 console.log(Math.clz32(1000)); // expected output: 22 console.log(Math.clz32()); // expected output: 32 console.log(Math.clz32(3.5)); // expected output: 30 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - sign(x) Math.sin() 函数返回一个数值的正弦值。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值(以弧度为单位)。 返回值 类型 number console.log(Math.sign(3)); // expected output: 1 console.log(Math.sign(-3)); // expected output: -1 console.log(Math.sign(0)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - log10(x) Math.log10() 函数返回一个数字以 10 为底的对数。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 任意数字。 返回值 类型 number console.log(Math.log10(10)); // expected output: 1 console.log(Math.log10(100)); // expected output: 2 console.log(Math.log10(1)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - log2(x) Math.log2() 函数返回一个数字以 2 为底的对数。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 任意数字。 返回值 类型 number console.log(Math.log2(2)); // expected output: 1 console.log(Math.log2(1024)); // expected output: 10 console.log(Math.log2(1)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - log1p(x) Math.log1p() 函数返回一个数字加 1 后的自然对数 (底为 E), 既log(x+1). 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 任意数字。 返回值 类型 number console.log(Math.log1p(Math.E-1)); // expected output: 1 console.log(Math.log1p(0)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - expm1(x) Math.expm1() 函数返回 E^x - 1, 其中 x 是该函数的参数,E 是自然对数的底数 2.718281828459045。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 任意数字。 返回值 类型 number console.log(Math.expm1(1)); // expected output: 1.718281828459045 console.log(Math.expm1(-38)); // expected output: -1 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - cosh(x) Math.cosh() 函数返回数值的双曲余弦函数 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 数值。 返回值 类型 number console.log(Math.cosh(0)); // expected output: 1 console.log(Math.cosh(1)); // expected output: 1.5430806348152437 console.log(Math.cosh(-1)); // expected output: 1.5430806348152437 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - sinh(x) Math.sinh() 函数返回一个数字 (单位为角度) 的双曲正弦值。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 任意数字 (单位为度). 返回值 类型 number console.log(Math.sinh(0)); // expected output: 0 console.log(Math.sinh(1)); // expected output: 1.1752011936438014 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - tanh(x) Math.tanh() 函数将会返回一个数的双曲正切函数值 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 待计算的数字。 返回值 类型 number console.log(Math.tanh(-1)); // Expected output: -0.7615941559557649 console.log(Math.tanh(0)); // Expected output: 0 console.log(Math.tanh(1)); // Expected output: 0.7615941559557649 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - acosh(x) Math.acosh() 函数返回一个数的反双曲余弦值 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数字。 返回值 类型 number console.log(Math.acosh(1)); // expected output: 0 console.log(Math.acosh(2)); // expected output: 1.3169578969248166 console.log(Math.acosh(2.5)); // expected output: 1.566799236972411 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - asinh(x) Math.asinh() 返回一个数值的反双曲正弦值 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值。 返回值 类型 number console.log(Math.asinh(1)); // expected output: 0.881373587019543 console.log(Math.asinh(0)); // expected output: 0 console.log(Math.asinh(-1)); // expected output: -0.881373587019543 console.log(Math.asinh(2)); // expected output: 1.4436354751788103 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - atanh(x) Math.atanh() 函数返回一个数值反双曲正切值 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值 返回值 类型 number console.log(Math.atanh(0)); // expected output: 0 console.log(Math.atanh(0.5)); // expected output: 0.5493061443340548 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - trunc(x) Math.trunc() 方法会将数字的小数部分去掉,只保留整数部分。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 任意数字 返回值 类型 number console.log(Math.trunc(13.37)); // Expected output: 13 console.log(Math.trunc(42.84)); // Expected output: 42 console.log(Math.trunc(0.123)); // Expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - fround(x) Math.fround() 可以将任意的数字转换为离它最近的单精度浮点数形式的数字。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个 Number。若参数为非数字类型,则会被转投成数字。无法转换时,设置成NaN。 返回值 类型 number console.log(Math.fround(1.5)); // expected output: 1.5 console.log(Math.fround(1.337)); // expected output: 1.3370000123977661 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ 3.9 x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - abs(x) RMath.abs(x) 函数返回一个数字的绝对值。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数字 返回值 类型 描述 number x 的绝对值。如果 x 是负数(包括 -0),则返回 -x。否则,返回 x function difference(a:number, b:number):number { return Math.abs(a - b); } console.log(difference(3, 5)); // expected output: 2 console.log(difference(5, 3)); // expected output: 2 console.log(difference(1.23456, 7.89012)); // expected output: 6.6555599999999995 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - acos(x) Math.acos() 返回一个数的反余弦值(单位为弧度) 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值. 返回值 类型 number console.log(Math.acos(-1)); // expected output: 3.141592653589793 console.log(Math.acos(0)); // expected output: 1.5707963267948966 console.log(Math.acos(1)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - asin(x) Math.asin() 方法返回一个数值的反正弦(单位为弧度) 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值 返回值 类型 number console.log(Math.asin(-1)); // expected output: -1.5707963267948966 (-pi/2) console.log(Math.asin(0)); // expected output: 0 console.log(Math.asin(0.5)); // expected output: 0.5235987755982989 console.log(Math.asin(1)); // expected output: 1.5707963267948966 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - atan(x) Math.atan() 函数返回一个数值的反正切(以弧度为单位) 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值 返回值 类型 number console.log(Math.atan(1)); // expected output: 0.7853981633974483 console.log(Math.atan(0)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - atan2(y, x) Math.atan2() 返回从原点 (0,0) 到 (x,y) 点的线段与 x 轴正方向之间的平面角度 (弧度值),也就是 Math.atan2(y,x) 参数 名称 类型 必填 默认值 兼容性 描述 y number 是 - - 数值 x number 是 - - 数值 返回值 类型 number console.log(Math.atan2(90, 15)); // expected output: 1.4056476493802699 console.log(Math.atan2(15, 90)); // expected output: 0.16514867741462683 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - ceil(x) Math.ceil() 函数总是四舍五入并返回大于等于给定数字的最小整数。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值 返回值 类型 number console.log(Math.ceil(0.95)); // expected output: 1 console.log(Math.ceil(4)); // expected output: 4 console.log(Math.ceil(7.004)); // expected output: 8 console.log(Math.ceil(-7.004)); // expected output: -7 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - cos(x) Math.cos() 函数返回一个数值的余弦值。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个以弧度为单位的数值。 返回值 类型 number console.log(Math.cos(0)); // expected output: 1 console.log(Math.cos(1)); // expected output: 0.5403023058681398 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - exp(x) Math.exp() 函数返回 e^x,x 表示参数,e 是欧拉常数(Euler's constant),自然对数的底数。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值 返回值 类型 number console.log(Math.exp(-1)); // expected output: 0.36787944117144233 console.log(Math.exp(0)); // expected output: 1 console.log(Math.exp(1)); // expected output: 2.718281828459045 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - floor(x) Math.floor() 函数总是返回小于等于一个给定数字的最大整数。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数字。 返回值 类型 number console.log(Math.floor(5.95)); // expected output: 5 console.log(Math.floor(5.05)); // expected output: 5 console.log(Math.floor(5)); // expected output: 5 console.log(Math.floor(-5.05)); // expected output: -6 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - log(x) Math.log() 函数返回一个数的自然对数 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数字。 返回值 类型 number console.log(Math.log(1)); // expected output: 0 console.log(Math.log(10)); // expected output: 2.302585092994046 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - max(...values) Math.max() 函数返回作为输入参数的最大数字,如果没有参数,则返回 -Infinity 参数 名称 类型 必填 默认值 兼容性 描述 values number[] 是 - - 0 个或多个数字,将在其中选择,并返回最大的值。 返回值 类型 描述 number 给定数值中最大的数。如果任一参数不能转换为数值,则返回 NaN。如果没有提供参数,返回 -Infinity。 console.log(Math.max(1, 3, 2)); // expected output: 3 console.log(Math.max(-1, -3, -2)); // expected output: -1 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - min(...values) Math.min() 函数返回作为输入参数的数字中最小的一个,如果没有参数,则返回 Infinity。 参数 名称 类型 必填 默认值 兼容性 描述 values number[] 是 - - 0 个或多个数字,将在其中选择,并返回最小值。 返回值 类型 描述 number 给定数值中最小的数。如果任一参数不能转换为数值,则返回 NaN。如果没有提供参数,返回 Infinity。 console.log(Math.min(2, 3, 1)); // expected output: 1 console.log(Math.min(-2, -3, -1)); // expected output: -3 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - pow(x, y) Math.pow() 函数返回基数(base)的指数(exponent)次幂,即 base^exponent。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 基数 y number 是 - - 指数 返回值 类型 number console.log(Math.pow(7, 3)); // expected output: 343 console.log(Math.pow(4, 0.5)); // expected output: 2 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - random() Math.random() 函数返回一个浮点数,伪随机数在范围从0 到小于1,也就是说,从 0(包括 0)往上,但是不包括 1(排除 1),然后您可以缩放到所需的范围。实现将初始种子选择到随机数生成算法;它不能被用户选择或重置。 返回值 类型 描述 number 一个浮点型伪随机数字,在0(包括 0)和1(不包括)之间。 function getRandomInt(max:number):number { return Math.floor(Math.random() max); } console.log(getRandomInt(3)); // expected output: 0, 1 or 2 console.log(getRandomInt(1)); // expected output: 0 console.log(Math.random()); // expected output: a number from 0 to <1 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - round(x) Math.round() 函数返回一个数字四舍五入后最接近的整数。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值。 返回值 类型 描述 number 给定数字的值四舍五入到最接近的整数。 console.log(Math.round(20.49)); // expected output: 20 console.log(Math.round(20.5)); // expected output: 21 console.log(Math.round(-20.5)); // expected output: -20 console.log(Math.round(-20.51)); // expected output: -21 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - sin(x) Math.sin() 函数返回一个数值的正弦值。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值(以弧度为单位)。 返回值 类型 number console.log(Math.sin(0)); // expected output: 0 console.log(Math.sin(1)); // expected output: 0.8414709848078965 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - sqrt(x) Math.sqrt() 函数返回一个数的平方根 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值 返回值 类型 number function calcHypotenuse(a:number, b:number):number { return (Math.sqrt((a a) + (b * b))); } console.log(calcHypotenuse(3, 4)); // expected output: 5 console.log(calcHypotenuse(5, 12)); // expected output: 13 console.log(calcHypotenuse(0, 0)); // expected output: 0 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - tan(x) Math.tan() 方法返回一个数值的正切值。 参数 名称 类型 必填 默认值 兼容性 描述 x number 是 - - 一个数值,表示一个角(单位:弧度)。 返回值 类型 number console.log(Math.tan(0)); // expected output: 0 console.log(Math.tan(1)); // expected output: 1.5574077246549023 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug hypot(...values) Math.hypot() 函数返回所有参数的平方和的平方根 参数 名称 类型 必填 默认值 兼容性 描述 values number[] 是 - - 任意个数字。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 x x x x x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - -
uniappx2024年8月9日 02:47:59
Date 创建一个 Date 实例,该实例呈现时间中的某个时刻。Date 对象则基于 Unix Time Stamp,即自 1970 年 1 月 1 日(UTC)起经过的毫秒数。 语法 new Date(); new Date(value); new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]); 复制代码 如果没有输入任何参数,则 Date 的构造器会依据系统设置的当前时间来创建一个 Date 对象。 如果提供了至少两个参数,其余的参数均会默认设置为 1(如果没有指定 day 参数)或者 0(如果没有指定 day 以外的参数)。 uts 的时间由世界标准时间(UTC)1970 年 1 月 1 日开始,用毫秒计时,一天由 86,400,000 毫秒组成。Date 对象的范围是 -100,000,000 天至 100,000,000 天(等效的毫秒值)。 目前支持的字符串格式有: Dec 25, 1995 01 Jan 1970 00:00:00 GMT 1995-12-17T03:24:00 December 17, 1995 03:24:00 December 17, 95 03:24:00 March 13, 08 04:20 July 20, 69 20:17:40 GMT+00:00 December 31, 1975, 23:15:30 GMT+11:00 2023/08/13 12:35:54 1995-02-14 2024-01-09 22:00:00 2024/5/1 (HBuilder X 4.18 Android/Web 支持) 2024/5/1 00:00:00 (HBuilder X 4.18 Android/Web 支持) 2024-05-01 00:00 (HBuilder X 4.18 Android/Web 支持) 2024/05/01 00:00 (HBuilder X 4.18 Android/Web 支持) 2024-5-1 00:00 (HBuilder X 4.18 Android/Web 支持) 2024/5/1 00:00 (HBuilder X 4.18 Android/Web 支持) 注意事项 如果Date构造函数传入不合法的字符串,比如: let date = new Date("Hello World") 复制代码 在不同的平台的表现有差异: web平台 会抛出异常:Invalid Date Android/ios平台 不会抛出异常,会变成程序执行时日期 比如:[Date] Fri May 31 2024 17:18:02 GMT+0800 Constructor() 新创建的 Date 对象代表当前的日期和时间。 返回值 类型 Date 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - Constructor(value) 参数 名称 类型 必填 默认值 兼容性 描述 value number | string 是 - - 为整数时,代表自 UTC 1970 年 1 月 1 日 00:00:00 (ECMAScript 纪元,与 UNIX 纪元相同)以来的毫秒数,忽略闰秒。请记住,大多数 UNIX 时间戳函数只精确到最近的秒。为字符串时:代表日期的字符串值,其格式由 Date.parse() 方法所识别。 返回值 类型 Date 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - Constructor(year, monthIndex, date?, hours?, minutes?, seconds?, ms?) 构造一个新的日期。 参数 名称 类型 必填 默认值 兼容性 描述 year number 是 - - 表示年的整数。从 0 到 99 的值映射了 1900 到 1999 年。其他值对应真实的年份。 monthIndex number 是 - - 表示月份的整数,从代表一月的 0 开始到代表十二月的 11 结束。 date number 否 - - 可选:表示一个月中第几天的整数。默认为 1。 hours number 否 - - 可选:表示一天中的小时数的整数值,在 0 到 23 之间。默认值为 0。 minutes number 否 - - 可选:表示时间的分钟段的整数值。默认为小时后的 0 分钟。 seconds number 否 - - 可选:表示时间的秒数段的整数值。默认为分钟后的 0 秒。 ms number 否 - - 可选:表示时间的毫秒段的整数值。默认为 0 毫秒的秒数。 返回值 类型 Date 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 静态方法 now() 返回自 1970 年 1 月 1 日 00:00:00 (UTC) 到当前时间的毫秒数。 返回值 类型 number // this example takes 2 seconds to run const start = Date.now() console.log('starting timer...') // expected output: starting timer... setTimeout(() => { const millis = Date.now() - start console.log(`seconds elapsed = ${Math.floor(millis / 1000)}`) // expected output: seconds elapsed = 2 }, 2000) 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 实例方法 toString() 返回一个字符串,以本地的时区表示该 Date 对象。 返回值 类型 string 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - toDateString() 以美式英语和人类易读的形式返回一个日期对象日期部分的字符串。 返回值 类型 string 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - toISOString() 一个 ISO(ISO 8601 Extended Format)格式的字符串: YYYY-MM-DDTHH:mm:ss.sssZ。时区总是 UTC(协调世界时),加一个后缀“Z”标识。 返回值 类型 string 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 √ x 4.11 x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - toJSON() 返回 Date 对象的字符串形式。调用 toJSON() 返回一个 JSON 格式字符串 (使用 toISOString()),表示该日期对象的值。默认情况下,这个方法常用于 JSON序列化Date对象。 参数 名称 类型 必填 默认值 兼容性 描述 key any 否 - - - 返回值 类型 string 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 √ x 4.11 x √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getTime() 返回从UTC时间1970年1月1日午夜开始以毫秒为单位存储的时间值。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getFullYear() 根据本地时间返回指定日期的年份。此方法替代 getYear() 。 返回值 类型 描述 number 根据当地时间,返回一个对应于给定日期的年份数字。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getMonth() 根据本地时间,返回一个指定的日期对象的月份,为基于 0 的值(0 表示一年中的第一月)。 返回值 类型 描述 number 一个 0 到 11 的整数值:0 代表一月份,1 代表二月份,2 代表三月份,依次类推。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getDate() 根据本地时间,返回一个指定的日期对象为一个月中的哪一日(从 1--31)。 返回值 类型 描述 number 返回一个 1 到 31 的整数值。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getDay() 根据本地时间,返回一个具体日期中一周的第几天,0 表示星期天。 返回值 类型 描述 number 根据本地时间,返回一个 0 到 6 之间的整数值,代表星期几:0 代表星期日,1 代表星期一,2 代表星期二,依次类推。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getHours() 根据本地时间,返回一个指定的日期对象的小时。 返回值 类型 描述 number 返回一个 0 到 23 之间的整数值。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getMinutes() 根据本地时间,返回一个指定的日期对象的分钟数。 返回值 类型 描述 number 返回一个 0 到 59 的整数值。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getSeconds() 根据本地时间,返回一个指定的日期对象的秒数。 返回值 类型 描述 number 返回一个 0 到 59 的整数值。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setTime(time) 以一个表示从 1970-1-1 00:00:00 UTC 计时的毫秒数为来为 Date 对象设置时间。 参数 名称 类型 必填 默认值 兼容性 描述 time number 是 - - 一个整数,表示从 1970-1-1 00:00:00 UTC 开始计时的毫秒数。 返回值 类型 描述 number UTC 1970 年 1 月 1 日 00:00:00 与更新日期之间的毫秒数(实际上是自变量的值)。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setMilliseconds(ms) 根据本地时间设置一个日期对象的豪秒数。如果指定的数字超出了合理范围,则日期对象的时间信息会被相应地更新。例如,如果指定了 1005,则秒数加 1,豪秒数为 5。 参数 名称 类型 必填 默认值 兼容性 描述 ms number 是 - - 一个 0 到 999 的数字,表示豪秒数。 返回值 类型 描述 number 返回更新后的时间距 1970 年 1 月 1 日 00:00:00 的毫秒数。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setSeconds(sec) 根据本地时间设置一个日期对象的秒数。 参数 名称 类型 必填 默认值 兼容性 描述 sec number 是 - - 一个 0 到 59 的整数。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setMinutes(min) 根据本地时间为一个日期对象设置分钟数。 参数 名称 类型 必填 默认值 兼容性 描述 min number 是 - - 一个 0 到 59 的整数,表示分钟数。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setHours(hours) 根据本地时间为一个日期对象设置小时数,返回从 1970-01-01 00:00:00 UTC 到更新后的 日期 对象实例所表示时间的毫秒数。 参数 名称 类型 必填 默认值 兼容性 描述 hours number 是 - - 必填,一个 0 到 23 的整数,表示小时。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setDate(date) 根据本地时间来指定一个日期对象的天数。如果 dayValue 超出了月份的合理范围,setDate 将会相应地更新 Date 对象。例如,如果为 dayValue 指定 0,那么日期就会被设置为上个月的最后一天。如果 dayValue 被设置为负数,日期会设置为上个月最后一天往前数这个负数绝对值天数后的日期。-1 会设置为上月最后一天的前一天(译者注:例如当前为 4 月,如果 setDate(-2),则为 3 月 29 日) 参数 名称 类型 必填 默认值 兼容性 描述 date number 是 - - 一个整数,表示该月的第几天。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setMonth(month) 根据本地时间为一个日期对象设置月份。 参数 名称 类型 必填 默认值 兼容性 描述 month number 是 - - 必填参数,介于 0 到 11 之间的整数(表示一月到十二月)。 返回值 类型 描述 number 基于 1 January 1970 00:00:00 UTC 开始计算的毫秒数。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - setFullYear(year) 各个平台在处理时间戳为负数时会有细节差异,尽量避免 参数小于1970的情况 根据本地时间为一个日期对象设置年份。 参数 名称 类型 必填 默认值 兼容性 描述 year number 是 - - 指定年份的整数值,例如 1995。 返回值 类型 number 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - parse(s) 解析一个表示某个日期的字符串,并返回从 1970-1-1 00:00:00 UTC 到该日期对象(该日期对象的 UTC 时间)的毫秒数,如果该字符串无法识别,或者一些情况下,包含了不合法的日期数值(如:2015-02-31),则返回值为 NaN。 参数 名称 类型 必填 默认值 兼容性 描述 s string 是 - - 一个符合 RFC2822 或 ISO 8601 日期格式的字符串(其他格式也许也支持,但结果可能与预期不符)。 返回值 类型 描述 number 一个表示从 1970-1-1 00:00:00 UTC 到给定日期字符串所表示时间的毫秒数的数值。如果参数不能解析为一个有效的日期,则返回NaN。 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug Android 平台方法 目前 Date 类型编译到 kotlin 为 io.dcloud.uts.Date let utsDate = new Date("1991-02-03") // UTS Date 转换 java Date let javaDate = new java.util.Date() javaDate.time = utsDate.getTime().toLong() // Sun Feb 03 1991 08:00:00 GMT+0800 console.log(javaDate) // java date 转 UTS Date let nextUTSDate = new Date(javaDate.time) // Sun Feb 03 1991 08:00:00 GMT+0800 console.log(nextUTSDate)
uniappx2024年8月9日 02:47:42
JSON 静态方法 parse JSON.parse() 方法用来解析 JSON 字符串,构造由字符串描述的对象。可能返回值是: UTSJSONObject/Array/number/boolean/string 等基本数据类型 特别说明: HBuilderX3.9.0统一为以上规范,在HBuilderX3.9.0之前版本 返回值只可能是 UTSJSONObject, 基本数据类型会转换失败 JSON.parse 目前仅支持第一个参数 const json = `{"result":true, "count":42}`; const obj = JSON.parse(json) as UTSJSONObject; console.log(obj["count"]); // expected output: 42 console.log(obj["result"]); // expected output: true 复制代码 注意 JSON.parse 解析出来的对象,目前仅支持使用方括号[]访问 如果输入的字符串不是合法的json格式,则会返回 null JSON.parse 接口内部通过特殊方式读取了范型类型,不支持传入动态的范型:比如将外层方法的普通范型参数传入 JSON.parse。 parse<T>(text: string) JSON.parse() 方法用来解析 JSON 字符串,构造由字符串描述的 JavaScript 值或对象。提供可选的 reviver 函数用以在返回之前对所得到的对象执行变换 (操作)。 参数 名称 类型 必填 默认值 兼容性 描述 text string 是 - - 要被解析成 JavaScript 值的字符串 reviver (this: any, key: string, value: any) => any 否 - - [可选]转换器,如果传入该参数 (函数),可以用来修改解析生成的原始值,调用时机在 parse 函数返回之前。 返回值 类型 描述 any | null 返回一个any 或者 null class Person { name:string = "" age:number = 0 } // 带泛型的parse,这里的personObj 类型是 我们定义的`Persion`类 let personObj = JSON.parse<Person>('{"name":"zhangsan","age":12}') // 不带泛型的parse,这里的jsonObj类型是通用的`UTSJSONObject` let jsonObj = JSON.parse('{"name":"zhangsan","age":12}') 复制代码 HBuilderX 3.9+,支持JSON.parse传入泛型。 与不带泛型的JSON.parse 相比,多了一个<Persion> 尖括号 用来指定返回类型。 相比不带泛型的parse函数,带泛型的 parse函数,会提高反序列数据的开发效率,明确的结构数据可以提升工程健壮度 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ √ UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - stringify(value, replacer?, space?) 注意:JSON.stringify 目前仅支持第一个参数 JSON.stringify() 方法将一个 JavaScript 对象或值转换为 JSON 字符串,如果指定了一个 replacer 函数,则可以选择性地替换值,或者指定的 replacer 是数组,则可选择性地仅包含数组指定的属性 参数 名称 类型 必填 默认值 兼容性 描述 value any | null 是 - - 将要序列化成 一个 JSON 字符串的值。 replacer any | null 是 - - 如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;如果该参数为 null 或者未提供,则对象所有的属性都会被序列化。 仅Android/web HBuilder X 4.25之后支持 space any | null 是 - - 指定缩进用的空白字符串,用于美化输出(pretty-print);如果参数是个数字,它代表有多少的空格;上限为 10。该值若小于 1,则意味着没有空格;如果该参数为字符串(当字符串长度超过 10 个字母,取其前 10 个字母),该字符串将被作为空格;如果该参数没有提供(或者为 null),将没有空格。 仅Android/web HBuilder X 4.25之后支持 返回值 类型 string console.log(JSON.stringify({ x: 5, y: 6 })); // expected output: "{"x":5,"y":6}" console.log(JSON.stringify([3, 'false', boolean])); // expected output: "[3,"false",false]" console.log(JSON.stringify(new Date(2006, 0, 2, 15, 4, 5))); // expected output: ""2006-01-02T15:04:05.000Z"" 复制代码 序列化规则说明: 类型名称 适应范围 规则 基本类型 number/string/boolean 对应json格式中的 原型数据类型 容器数据类型 UTSArray/UTSJSONObject 对应json格式中的 jsonarray/jsonobject map和set map和set 与web保持一致,序列化为 空jsonobject对象: {} 自定义type 开发者使用type 声明的类型对象 被序列化为 jsonobject 自定义class 开发者使用class 声明的类型对象 被序列化为 空jsonobject对象: {} function 对象内部声明的函数 被序列化为 null parseObject(text: string) 注意: 此函数需要 HBuilderX 3.9x 以上版本 JSON.parseObject() 方法用来解析 JSON 字符串,构造由字符串描述的对象。 如果输入的是一个合法的json对象,返回一个对应的UTSJSONObject,如果是json array 或者其他格式的字符串返回null 参数 名称 类型 必填 默认值 兼容性 描述 text string 是 - - 要被解析成 JavaScript 值的字符串 返回值 类型 描述 UTSJSONObject | null 返回一个UTSJSONObjet 或者 null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - parseObject<T>(text: string) 注意: 此函数需要 HBuilderX 3.9x 以上版本 JSON.parseObject() 方法用来解析 JSON 字符串,构造由字符串描述的对象,该对象的类型由泛型参数T决定 如果输入的是一个合法的json对象,返回一个对应的T对象,如果是json array 或者其他格式的字符串返回null 参数 名称 类型 必填 默认值 兼容性 描述 text string 是 - - 要被解析成 JavaScript 值的字符串 返回值 类型 描述 T | null 返回一个T类型对象 或者 null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 3.9 x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - parseArray(text: string) 注意: 此函数需要 HBuilderX 3.9x 以上版本 JSON.parseArray() 方法用来解析 JSON 字符串,构造由字符串描述的数组。数组元素类型为any 如果输入的是一个合法的json数组,返回一个对应的Array,如果是json object 或者其他格式的字符串返回null 参数 名称 类型 必填 默认值 兼容性 描述 text string 是 - - 要被解析成 JavaScript 值的字符串 返回值 类型 描述 Array<any> | null 返回一个Array 或者 null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - parseArray<T>(text: string) 注意: 此函数需要 HBuilderX 3.9x 以上版本 JSON.parseArray() 方法用来解析 JSON 字符串,构造由字符串描述的数组。数组元素类型由泛型T决定 如果输入的是一个合法的json数组,返回一个对应的Array,如果是json object 或者其他格式的字符串返回null 参数 名称 类型 必填 默认值 兼容性 描述 text string 是 - - 要被解析成 JavaScript 值的字符串 返回值 类型 描述 Array<T> | null 返回一个Array 或者 null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 √ √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug 兼容性说明 从 HBuilder X 4.21 版本开始,JSON.parse 未指定类型泛型的情况下解析得到的 number 类型,不再是 kotlin.Number 而是 UTSNumber 类型。 对开发者影响在于:之前允许 number 类型使用 as 操作符进行数据类型转换,在4.21 之后版本,此行为会导致编译报错. let jsonObject = JSON.parseObject('{"a":1}') ; let b:Int = jsonObject!['a'] as Int console.log(b) 复制代码 上面这段代码,在HBuilder X 4.21之前版本是可以运行的,但是在 HBuilder X 4.21 之后版本会在编译阶段触发下面的报错: error: java.lang.ClassCastException: io.dcloud.uts.UTSNumber cannot be cast to java.lang.Integer 复制代码 如果需要数据类型转换,请使用 toXXX 替代,上面的代码可以替换为: let jsonObject = JSON.parseObject('{"a":1}') ; let b:Int = (jsonObject!['a'] as Number).toInt() console.log(b)
uniappx2024年8月9日 02:47:28
UTSJSONObject UTSJSONObject 是 UTS 语言的内置类型,主要用来操作匿名对象 注意:UTSJSONObject类型的数据暂不支持响应式 创建实例 UTSJSONObject 对象的实例目前主要通过两种方式来创建: 通过对象字面量 const person: UTSJSONObject = { name: 'Tom', printName: () => { // ... } } 复制代码 通过 JSON 字符串 // 写法1 推荐 const person: UTSJSONObject = JSON.parseObject('{"name":"Tom"}')! // 写法2 推荐 const person: UTSJSONObject = JSON.parse<UTSJSONObject>('{"name":"Tom"}')! // 写法3 如果 as 转换的实际类型不匹配 会导致 crash,建议先通过 `instanceof` 判断类型再进行as转换。 const parseRet = JSON.parse('{"name":"Tom"}') if(parseRet instanceof UTSJSONObject){ const person = parseRet as UTSJSONObject } 复制代码 静态方法 keys(object: UTSJSONObject): Array 以数组的形式返回指定UTSJSONObjetc 对象内可枚举属性的名称列表 返回值 类型 描述 Array<string> 返回 Array<string> 类型的可枚举属性的名称列表 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.25 4.18 4.23 4.18 4.23 x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - let obj = { name:"zhangsan", age:11 } // 执行结果: 2 UTSJSONObject.keys(obj).size 复制代码 assign(...items): UTSJSONObject 该方法允许输入一个或者多个UTSJSONObject对象,合并后返回一个新的UTSJSONObject,其中包含全部输入对象的属性字段,如果存在同名的属性会以后传入的属性为准 参数 名称 类型 必填 默认值 兼容性 描述 items UTSJSONObject[] 是 - - - 返回值 类型 描述 UTSJSONObject 合并后的UTSJSONObject 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.25 4.18 4.23 4.18 4.23 x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 注意: 与js中的Object.assign不同, 这里每次返回的都是一个新的对象 const target = { a: 1, b: 2 }; const source = { b: 4, c: 5 }; // 得到一个UTSJSONObject对象 const returnedTarget = UTSJSONObject.assign(target, source); 复制代码 assign(...items: T[]): T 该方法允许输入一个或者多个UTSJSONObject对象,合并后返回一个新的泛型对象T,其中包含全部输入对象的属性字段,如果存在同名的属性会以后传入的属性为准 参数 名称 类型 必填 默认值 兼容性 描述 items any[] 是 - - - 返回值 类型 描述 T 合并后的泛型对象 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.25 4.18 4.23 4.18 4.23 x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 注意: 与js中的Object.assign不同, 这里每次返回的都是一个新的对象 type User = { a:number b:number } const target = { a: 1, b: 2 }; const source = { b: 4, c: 5 }; // 得到一个User对象 const returnedTarget = UTSJSONObject.assign<User>(target, source); 复制代码 实例方法 get(key: string): any | null 返回指定键对应的值,如果对象中不存在此键则返回 null。 const name: string = person.get('name') as string 复制代码 get 方法可以简化为使用下标运算符 [] 访问 const name: string = person['name'] as string 复制代码 set(key: string, value: any | null) 增加或更新指定键对应的值。 person.set('name', 'Tom') 复制代码 set 方法可以简化为使用下标运算符 [] 赋值 person['name'] = 'Tom' 复制代码 getAny(key): any | null 获取一个 属性,返回类型是any 或者 null 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 any|null 如果属性存在返回结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getBoolean(key): boolean | null 获取一个Boolean属性,返回类型是Boolean 或者 null 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 boolean|null 如果属性名存在,且类型为Boolean返回对应的结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getNumber(key): number | null 获取一个number属性,返回类型是number 或者 null 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 number|null 如果属性名存在,且类型为number返回对应的结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getString(key): string | null 获取一个string属性,返回类型是string 或者 null 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 string|null 如果属性名存在,且类型为string返回对应的结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getJSON(key): UTSJSONObject | null 获取一个UTSJSONObject属性,返回类型是UTSJSONObject 或者 null 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 UTSJSONObject|null 如果属性名存在,且类型为UTSJSONObject返回对应的结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getArray(key): Array | null 获取一个Array属性,返回类型是Array 或者 null, 数组元素类型由泛型T决定 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 Array<T>|null 如果属性名存在,且类型为Array返回对应的结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - getArray(key): Array | null 获取一个Array属性,返回类型是Array 或者 null 参数 名称 类型 必填 默认值 兼容性 描述 key string 是 - - - 返回值 类型 描述 Array<any>|null 如果属性名存在,且类型为Array返回对应的结果,不存在返回null 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 这个方法用来获取指定元素类型的数组 let obj = JSON.parseObject('{"name":"tom","tag":["student","user"]}') // 这里得到是 Array<*> let noGenericArray = obj!.getArray("tag") console.log(noGenericArray) // 这里得到是 Array<string> let genericArray = obj!.getArray<string>("tag") console.log(genericArray) 复制代码 toMap(): Map<string, any> 将当前 UTSJSONObject 实例转换为 Map 实例。 返回值 类型 描述 Map<string, any> 返回 Map<string, any> 类型的 map person.toMap().forEach((value, key) => { console.log(key) console.log(value) }) 复制代码 兼容性 Web uni-app x Android uni-app x iOS uni-app x Android uni-app iOS uni-app Web uni-app 4.0 3.9 4.11 3.9 √ x UTS 插件兼容性 Android uni-app x UTS 插件 Android uni-app UTS 插件 iOS uni-app x UTS 插件 iOS uni-app UTS 插件 - - - - 参见 相关 Bug 常见问题 UTSJSONObject 与 type 相互转换 可以使用下面的代码,进行 UTSJSONObject 和 type 转换 type User = { name:string, age:number } let jsonObj = { name:"张三", age:12 } // UTSJSONObject => 自定义type let userA = JSON.parse<User>(jsonObj.toJSONString()) console.log(userA!.name) // 自定义type => UTSJSONObject let utsJsonA = JSON.parseObject(JSON.stringify(userA)) console.log(utsJsonA) 复制代码 Android 平台方法 目前 UTSJSONObject 类型编译到 kotlin 为 io.dcloud.uts.UTSJSONObject // 创建一个kotlin hashmap let kotlinMap = new kotlin.collections.HashMap<string,number>() kotlinMap.put("a",111) kotlinMap.put("b",2) // 转换为UTSJSONObject let utsObj = new UTSJSONObject(kotlinMap) console.log(utsObj) // UTSJSONObject 转换为 Map let nextMap = utsObj.toMap() console.log(nextMap)
正在加载...