📅  最后修改于: 2023-12-03 15:22:09.497000             🧑  作者: Mango
在 Golang 中,我们可以使用 os.Args
变量来获取命令行参数。命令行参数是启动程序时传递的参数,它们用于自定义程序的行为。在本文中,我们将介绍如何使用 os.Args
来启动一个能够解析 JSON 的 Javascript。
以下是实现该功能的代码:
package main
import (
"encoding/json"
"fmt"
"os"
)
func main() {
args := os.Args[1:]
var data map[string]interface{}
err := json.Unmarshal([]byte(args[0]), &data)
if err != nil {
panic(err)
}
fmt.Println(data)
}
我们首先导入了 encoding/json
和 fmt
库,以及 os
库,用于获取命令行参数。在 main()
函数中,我们使用 os.Args[1:]
获取所有的命令行参数,忽略第一个参数(它是程序的名称)。
接下来,我们创建了一个 map[string]interface{}
类型的变量 data
,它用于存储解析后的 JSON 数据。我们使用 json.Unmarshal()
函数来解析 JSON 数据,并将其保存到 data
变量中。
最后,我们打印了 data
变量的值,以确保我们成功地解析了 JSON 数据。
要使用这个程序来解析 JSON 数据,您可以在命令行中执行以下命令:
$ go run main.go '{ "name": "John", "age": 30 }'
它将输出以下内容:
map[age:30 name:John]
这是 data
变量中包含的解析后的 JSON 数据。
在本文中,我们使用 os.Args
变量和 json.Unmarshal()
函数来启动一个能够解析 JSON 的 Javascript。这是一个非常简单的例子,但您可以使用类似的方法来实现更复杂的程序。