增加是否有效数组判断
This commit is contained in:
parent
9090051eef
commit
bd989696a1
58
array.go
Normal file
58
array.go
Normal file
@ -0,0 +1,58 @@
|
||||
// Package wrapper ...
|
||||
//
|
||||
// Description : wrapper ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 2023-06-11 21:02
|
||||
package wrapper
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// Array 数组实例
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 21:03 2023/6/11
|
||||
func Array(value interface{}) *ArrayType {
|
||||
return &ArrayType{
|
||||
value: value,
|
||||
}
|
||||
}
|
||||
|
||||
// ArrayType ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 21:05 2023/6/11
|
||||
type ArrayType struct {
|
||||
value interface{}
|
||||
}
|
||||
|
||||
// IsNil 输入是否为nil
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 21:11 2023/6/11
|
||||
func (at *ArrayType) IsNil() bool {
|
||||
return at.value == nil
|
||||
}
|
||||
|
||||
// IsValid 检测是否为数组类型
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 21:06 2023/6/11
|
||||
func (at *ArrayType) IsValid() bool {
|
||||
if at.IsNil() {
|
||||
return false
|
||||
}
|
||||
byteData, err := json.Marshal(at.value)
|
||||
if nil != err {
|
||||
return false
|
||||
}
|
||||
return strings.HasPrefix(string(byteData), "[") && strings.HasSuffix(string(byteData), "]")
|
||||
}
|
18
array_test.go
Normal file
18
array_test.go
Normal file
@ -0,0 +1,18 @@
|
||||
// Package wrapper ...
|
||||
//
|
||||
// Description : wrapper ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 2023-06-11 21:12
|
||||
package wrapper
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestArray(t *testing.T) {
|
||||
val := []int64{1, 2, 3}
|
||||
fmt.Println(Array(val).IsValid())
|
||||
}
|
Loading…
Reference in New Issue
Block a user