Utils

Creator 内置的一些工具函数

File

接口说明

  1. interface UnzipOptions {
  2. peel?: boolean;
  3. }

函数

copy

copy(source: string, target: string): void

复制一个文件到另一个位置

请求参数

NameTypeDescription
sourcestring
targetstring
  1. Editor.Utils.File.copy('C:\\CocosCreatorWorkSpace\\HelloWorld', 'E:\\CocosCreatorWorkSpace\\HelloWorld');

getName

getName(file: string): string

初始化一个可用的文件名,返回可用名称的文件路径 遇到重名时会自动递增直到获取到一个不会冲突的可用文件地址

Parameters

NameTypeDescription
filestring初始文件路径

返回结果

string

  1. const newFileName = Editor.Utils.File.getName('E:\\CocosCreatorWorkSpace\\HelloWorld');

unzip

unzip(zip: string, target: string, options?: UnzipOptions): Promise<void>

解压文件夹

请求参数

NameTypeDescription
zipstring
targetstring
options?UnzipOptions

返回结果

Promise<void>

  1. await Editor.Utils.File.unzip('E:\\repositories\\utils.zip', 'E:\\CocosCreatorWorkSpace\\HelloWorld');

Math

函数

add

add(arg1: string | number, arg2: string | number): number

加法函数 入参:函数内部转化时会先转字符串再转数值,因而传入字符串或 number 均可 返回值:arg1 加上 arg2 的精确结果

请求参数

NameTypeDescription
arg1string \number
arg2string \number

返回结果

number

  1. const res = Editor.Utils.Math.add('123', 12.12); // 135.12

clamp

clamp(val: number, min: number, max: number): any

取给定边界范围的值

请求参数

NameTypeDescription
valnumber
minnumber
maxnumber
  1. const res = Editor.Utils.Math.clamp(100, 1, 99); // 99

clamp01

clamp01(val: number): number

取给 0 - 1 范围内的值

请求参数

NameTypeDescription
valnumber

返回结果

number

  1. const res = Editor.Utils.Math.clamp01(0.5); // 0.5

sub

sub(arg1: string | number, arg2: string | number): number

减法函数 入参:函数内部转化时会先转字符串再转数值,因而传入字符串或number均可 返回值:arg1 减 arg2的精确结果

请求参数

NameTypeDescription
arg1string \number
arg2string \number

返回结果

number

  1. const res = Editor.Utils.Math.sub('123', 12.12); // 110.88

toFixed

toFixed(val: number, num: number): number

保留小数点

请求参数

NameTypeDescription
valnumber
numnumber

返回结果

number

  1. const res = Editor.Utils.Math.toFixed(12.1294, 2); // 12.13

Path

变量

delimiter

delimiter: ";" | ":"

sep

sep: "\\" | "/"

函数

basename

basename(p: string, ext?: string): string

返回路径的最后一部分

请求参数

NameTypeDescription
pstring路径
ext?string文件扩展名,可选

返回结果

string

  1. const fileName = Editor.Utils.Path.basename('E:\\CocosCreatorWorkSpace\\HelloWorld\\package.json', '.json'); // package

basenameNoExt

basenameNoExt(path: string): string

返回一个不含扩展名的文件名

请求参数

NameTypeDescription
pathstring

返回结果

string

  1. const fileName = Editor.Utils.Path.basenameNoExt('E:\\CocosCreatorWorkSpace\\HelloWorld\\package.json'); // package

contains

contains(pathA: string, pathB: string): boolean

判断路径 pathA 是否包含 pathB

请求参数

NameTypeDescription
pathAstring
pathBstring

返回结果

boolean

  1. const res = Editor.Utils.Path.contains('foo/bar', 'foo/bar/foobar'); // true
  2. const res = Editor.Utils.Path.contains('foo/bar', 'foo/bar'); // true
  3. const res = Editor.Utils.Path.contains('foo/bar/foobar', 'foo/bar'); // false
  4. const res = Editor.Utils.Path.contains('foo/bar/foobar', 'foobar/bar/foo'); // false

dirname

dirname(p: string): string

返回路径的目录名

请求参数

NameTypeDescription
pstring

返回结果

string

  1. const dirname = Editor.Utils.Path.dirname('E:\\CocosCreatorWorkSpace\\HelloWorld\\package.json');
  2. // "E:\\CocosCreatorWorkSpace\\HelloWorld"

extname

extname(p: string): string

返回路径的扩展名

请求参数

NameTypeDescription
pstring

返回结果

string

  1. const extname = Editor.Utils.Path.extname('E:\\CocosCreatorWorkSpace\\HelloWorld\\package.json'); // .json

format

format(p: FormatInputPathObject): string

根据对象数据返回路径字符串

请求参数

NameTypeDescription
pFormatInputPathObject

返回结果

string

  1. const path = Editor.Utils.Path.format({
  2. root: '/ignored',
  3. dir: '/home/user/dir',
  4. base: 'file.txt'
  5. }); // "/home/user/dir\\file.txt"

isAbsolute

isAbsolute(p: string): boolean

判断路径是否为绝对路径

请求参数

NameTypeDescription
pstring

返回结果

boolean

  1. const res = Editor.Utils.Path.isAbsolute('E:\\CocosCreatorWorkSpace\\HelloWorld\\package.json'); // true

join

join(…paths: string[]): string

使用特定于平台的分隔符作为定界符将所有给定的 path 片段连接在一起,然后规范化生成的路径

请求参数

NameTypeDescription
…pathsstring[]

返回结果

string

  1. const path = Editor.Utils.Path.join('/foo', 'bar', 'abc/def', 'g'); // "\\foo\\bar\\abc\\def\\g"

normalize

normalize(path: string): string

格式化路径 如果是 Windows 平台,需要将盘符转成小写进行判断

请求参数

NameTypeDescription
pathstring

返回结果

string

  1. const path = Editor.Utils.Path.normalize('/foo/bar//abc/def/g'); // "\\foo\\bar\\abc\\def\\g"

parse

parse(p: string): ParsedPath

返回一个对象,表示路径的重要信息

请求参数

NameTypeDescription
pstring

返回结果

ParsedPath

  1. const res = Editor.Utils.Path.parse('/foo/bar//abc/def/g.txt');

relative

relative(from: string, to: string): string

根据当前工作目录返回从 fromto 的相对路径

请求参数

NameTypeDescription
fromstring
tostring

返回结果

string

  1. const relativePath = Editor.Utils.Path.relative('C:\\program\\test\\aaa', 'C:\\program\\impl\\bbb'); // "..\\..\\impl\\bbb"

resolve

resolve(…pathSegments: string[]): string

将路径或路径片段的序列解析为绝对路径

请求参数

NameTypeDescription
…pathSegmentsstring[]

返回结果

string

  1. const path = Editor.Utils.Path.resolve('/foo/bar', './abc'); // "D:\\foo\\bar\\abc"

slash

slash(path: string): string

将 \ 统一换成 /

请求参数

NameTypeDescription
pathstring

返回结果

string

  1. const path = Editor.Utils.Path.slash('\\foo\\bar'); // "/foo/bar"

stripExt

stripExt(path: string): string

删除一个路径的扩展名

请求参数

NameTypeDescription
pathstring

返回结果

string

  1. const path = Editor.Utils.Path.stripExt('E:\\HelloWorld\\package.json'); // "E:\\HelloWorld\\package"

stripSep

stripSep(path: string): string

去除路径最后的斜杆,返回一个不带斜杆的路径

请求参数

NameTypeDescription
pathstring

返回结果

string

  1. const path = Editor.Utils.Path.stripSep('E:\\HelloWorld\\package.json\\'); // "E:\\HelloWorld\\package.json"

Url

函数

getDocUrl

getDocUrl(relativeUrl: string, type?: "manual" | "api"): string

快捷获取文档路径

请求参数

NameTypeDescription
relativeUrlstring
type?"manual"</td><td>"api"

返回结果

string

  1. const url = Editor.Utils.Url.getDocUrl('publish/publish-bytedance.html');
  2. // "https://docs.cocos.com/creator/3.4/manual/zh/publish/publish-bytedance.html"

UUID

函数

compressUUID

compressUUID(uuid: string, min: boolean): string

压缩 UUID

请求参数

NameTypeDescription
uuidstring
minboolean

返回结果

string

  1. const uuid = Editor.Utils.UUID.compressUUID('7bf9df40-4bc9-4e25-8cb0-9a500f949102'); // "7bf9d9AS8lOJYywmlAPlJEC"

decompressUUID

decompressUUID(str: string): string

解压 UUID

请求参数

NameTypeDescription
strstring

返回结果

string

  1. const uuid = Editor.Utils.UUID.decompressUUID('7bf9d9AS8lOJYywmlAPlJEC'); // "7bf9df40-4bc9-4e25-8cb0-9a500f949102"

generate

generate(): string

生成一个新的 uuid

返回结果

string

  1. const uuid = Editor.Utils.UUID.generate();

isUUID

isUUID(str: string): string

检查输入字符串是否是 UUID

请求参数

NameTypeDescription
strstring

返回结果

string

  1. const isUUID = Editor.Utils.UUID.isUUID('7bf9d9AS8lOJYywmlAPlJEC'); // true