コード例 #1
0
ファイル: data_js.go プロジェクト: ninchat/ninchat-go
// StringifyFrame is only available with GopherJS.
func StringifyFrame(object *js.Object) *js.Object {
	if _, ok := object.Interface().(string); ok {
		return object
	}

	jsView := js.Global.Get("Uint8Array").New(object)
	goBytes := jsView.Interface().([]uint8)
	goString := string(goBytes)
	return js.Global.Get("String").New(goString)
}
コード例 #2
0
ファイル: util.go プロジェクト: snyderep/pongish
func StringSlice(o *js.Object) []string {
	if o == nil {
		return nil
	}
	d := o.Interface().([]interface{})
	ret := make([]string, len(d))
	for i, e := range d {
		ret[i] = e.(string)
	}
	return ret
}
コード例 #3
0
ファイル: util.go プロジェクト: snyderep/pongish
func Float64Slice(o *js.Object) []float64 {
	if o == nil {
		return nil
	}
	d := o.Interface().([]interface{})
	ret := make([]float64, len(d))
	for i, e := range d {
		ret[i] = e.(float64)
	}
	return ret
}
コード例 #4
0
ファイル: util.go プロジェクト: snyderep/pongish
func IntSlice(o *js.Object) []int {
	if o == nil {
		return nil
	}
	d := o.Interface().([]interface{})
	ret := make([]int, len(d))
	for i, e := range d {
		ret[i] = int(e.(float64))
	}
	return ret
}