gpt4 book ai didi

javascript - 将字符串数组 "[1,2,3]"转换为 Javascript 中的数字数组

转载 作者:行者123 更新时间:2023-12-01 15:29:40 25 4
gpt4 key购买 nike

我一直在寻找解决方案,但我只找到了 ["1","2","3"] 的转换。至[1,2,3] ,但我的问题是如何转换:"[1,2,3]"[1,2,3] .

你们中的许多人可能很清楚,但对我来说却不是。

最佳答案

有几种方法:

  • 使用已经提到的:eval("[1,2,3]")
  • 使用已经提到的:JSON.parse("[1,2,3]")您可以访问https://github.com/koldev/JsonParser并获取没有此方法的浏览器的官方实现,例如 IE7。
  • 使用 jQuery 的 JSON 解释器:$.parseJSON("[1,2,3]")
  • 使用函数构造函数:Function("return [1,2,3];")()
  • 使用任何构造函数:[]["filter"]["constructor"]("return [1,2,3]")() (感谢 JSF*ck )

  • 最安全的选择是使用来自 jQuery 或浏览器原生包的 JSON 包。

    请记住 eval是邪恶的!它允许执行任意代码。 Function 也是如此。构造函数,但可以添加 'return'给它。
    如果你这样做 eval("[1,2,3]; evil();") , evil()函数将执行,而 Function("return [1,2,3]; evil();")将阻止 evil() 的执行.
    这不是完美的解决方案 , 因为仍然可以 Function("return evil() || [1,2,3];") , 和 evil()将被执行。但是,在这种情况下, [1,2,3]仅在 evil() 时返回返回一个假值( ""null0false ,...)。

    关于javascript - 将字符串数组 "[1,2,3]"转换为 Javascript 中的数字数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30728877/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com