Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中将双引号中的数组转换回原始数组_Javascript_Arrays_String - Fatal编程技术网

如何在Javascript中将双引号中的数组转换回原始数组

如何在Javascript中将双引号中的数组转换回原始数组,javascript,arrays,string,Javascript,Arrays,String,如何在Javascript中将该字符串转换为原始数组 var str_arr = "["myName","asldkfjs","2342","sbc@lkjsf.com","sdlkfjskldf",410]" 就像我想把它存储回原始数组一样 var arr = ["myName","asldkfjs","2342","sbc@lkjsf.com","sdlkfjskldf",410]; 您可以尝试将其解析为JSON,因为数组是有效的JSON(假设它对字符串使用双引号) 此外,正如@mano

如何在Javascript中将该字符串转换为原始数组

var str_arr = "["myName","asldkfjs","2342","sbc@lkjsf.com","sdlkfjskldf",410]"
就像我想把它存储回原始数组一样

var arr = ["myName","asldkfjs","2342","sbc@lkjsf.com","sdlkfjskldf",410];

您可以尝试将其解析为JSON,因为数组是有效的JSON(假设它对字符串使用双引号)


此外,正如@manonthemat所提到的,您需要使用单引号来包装声明str_arr的字符串文字(因为它包含双引号),或者需要转义双引号以避免语法错误。

str_arr中存在语法错误

var str_arr = '["myName","asldkfjs","2342","sbc@lkjsf.com","sdlkfjskldf",410]';
var arr = JSON.parse(str_arr);

第一句话中的“原始”数组是什么意思?我的意思是,删除双引号。第一行的可能重复是无效的JavaScript。您需要使用单引号或转义内部双引号。这有效吗?意思是删除双引号并替换为单引号?是的,双引号和单引号在JSF中是相同的。在浏览器控制台或nodejs repl中很容易验证这一点。原始post使用双引号来启动字符串将导致语法错误,因为出现了意外的标识符,因为前面的双引号会导致第一个m。所以你必须小心初始化一个带引号的字符串。
var str_arr = '["myName","asldkfjs","2342","sbc@lkjsf.com","sdlkfjskldf",410]';
var arr = JSON.parse(str_arr);