Skip to main content

28. 全局变量与内置函数

方法名描述
append(i,vals...) -> []varslice / list 的追加
copy(a,b)slice / list 复制,a为目的,b为源
delete(map,k)根据 key 删除 map 的某个键值对
get(map, key, defaultValues...) -> var获取一个map的key值,可以选传入一个默认值,当没有指定key的时候返回这个默认值
len(i) -> int用于获取一个对象的长度(chan/slice/map)
cap(i) -> int用于获取一个对象的容量(chan/slice)
panicf(format,errors...)对panic进行了封装,可以使用格式化字符串抛出异常
print(i...)同 Golang fmt.Print
println(i...)同 Golang fmt.Printf
printf(format,i...)同 Golang fmt.Println
sprint(i...) -> string同 Golang fmt.Sprint
sprintln(i...) -> string同 Golang fmt.Sprintln
sprintf(format,i...) -> string同 Golang fmt.Sprintf
set(map,arg...)设置一个对象(slice/map)的键值对,可传入多对参数
close(i)关闭chan
min(i...) -> var取所有参数最小值,支持(int/float)
max(i...) -> var取所有参数最大值,支持(int/float)
loglevel(level)根据传入的字符串level来设置日志等级,可用的等级有:disable, fatal, error, warn, info, debug
logquiet() / logdiscard()禁用日志输出,相当于loglevel("disable")
logrecover()设置日志输出为os.Stdout
fail(value...)相当于panic,但是能传入多个value来描述错误,value可以是字符串,错误或其他任何对象
die(err)当传入的error不为nil时会panic
uuid() -> string生成一串唯一的uuid字符串
timestamp() -> int64生成当前时间的Unix时间
nanotimestamp() -> int64生成当前时间的NanoUnix时间
datetime() -> string生成格式为2006-01-02 15:04:05的日期字符串
date() -> string生成格式为2006-01-02的日期字符串
now() -> time.Time返回当前本地时间
timestampToDatetime(tv) -> string将Unix时间转换为对应的日期字符串
datetimeToTimestamp(tstr) -> (int64, error)将日期字符串转换为对应的Unix时间
timestampToTime(tv) -> time.Time将Unix时间转换为Time结构体
dump(i...)类似于php的var_dump,输出传入参数的详细信息
sdump(i...) -> string与dump类似,但是返回字符串而非直接输出
randn(min, max) -> int生成在[min, max)区间的随机整数
randstr(len) -> string生成长度为len的随机字母字符串
sleep(s) -> string延时s秒
wait(i)类似于sleep,如果传入context则等待其Done()
assertTrue(cond, reason...)当条件为假时,会使用reason作为描述信息panic
assertf(cond, format, i...)与assertTrue类似,相当于 assertTrue(sprintf(f, i...))
isEmpty(i) -> bool判断传入的参数是否为空,当且仅当传入的参数为nil/undefined时为空
assertEmpty(i)与assert语法类似,当且仅当 !isEmpty(i) 时panic
parseInt(s) -> int返回字符串表示的十进制整数值
parseStr(i) -> string将传入的参数转换为字符串,等价于sprint(i)
parseString(i) -> string将传入的参数转换为字符串,等价于sprint(i)
parseBool(i) -> bool返回字符串表示的bool值,它接受1、0、t、f、T、F、true、false、True、False、TRUE、FALSE
parseBoolean(i) -> bool返回字符串表示的bool值,它接受1、0、t、f、T、F、true、false、True、False、TRUE、FALSE
parseFloat(i) -> float解析一个表示浮点数的字符串并返回其值
Atoi(s) -> (int, error)近乎等价于 parseInt(s),但是会返回错误
parseTime(layout, value) -> (time.Time, error)Parse解析一个格式化的时间字符串value并返回它代表的时间及错误。layout 参考:Mon Jan 2 15:04:05 -0700 MST 2006
tick1s(func()bool)每秒执行一次传入的函数,当函数返回false时停止
desc(i)描述一个对象的结构
descStr(i) -> string描述一个对象的结构并返回字符串
chr(i) -> string将传入的整数参数转换为ascii码对应的字符
ord(i) -> int将传入的参数转换为对应的ascii码整数
typeof(i) -> type返回传入参数的类型,可以直接比较,例如:typeof(1) == int