问题产生原因

由于数据传输的原因,有时我们得到的是字符串形式的数组(比如:"[‘a’, ‘b’, ‘c’, ‘d’]")。要将这种字符串还原成数组对象,有如下两种方法。

解决方法

1. 使用 eval() 函数转换

(1)eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。我们可以借助它来将字符串还原成数组。

var str = '["a", "b", "c", "d"]';
var arr =  eval('(' + str + ')');
console.log("原始的字符串:", str);
console.log("转换后的数组:", arr);
console.log("数组第一个值:", arr[0]);

(2)运行结果如下:
eval()

2. 使用 JSON.parse() 方法转换

(1)由于数组的类型也是对象,因此我们也可以用 JSON.parse() 方法将数组转换成对象。

var str = '["a", "b", "c", "d"]';
var arr =  JSON.parse(str);
console.log("原始的字符串:", str);
console.log("转换后的数组:", arr);
console.log("数组第一个值:", arr[0]);

(2)运行结果同上面一样:
JSON.parse()

原文出自:www.hangge.com 转载请保留原文链接:https://www.hangge.com/blog/cache/detail_2243.html

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐