如何从数组字符串中提取内部字符串

时间:2016-12-27 11:29:19

标签: javascript jquery

我有以下字符串,包含一个包含字符串的数组:

   '["sgrdalal21"]'

如何提取内部字符串?

2 个答案:

答案 0 :(得分:2)

'["sgrdalal21"]'表示为字符串,JSON.parse()可用于构造JavaScript值或对象。

var obj = JSON.parse('["sgrdalal21"]');
var str = obj[0]; //Use index to access the element

答案 1 :(得分:1)

你拥有的是一个JSON字符串:

var array, string;
try {
  array = JSON.parse(json);
  string = array[0];
} catch (e) {
  // handle error
}

您必须将其解析为JSON才能拥有普通数组。 然后你可以访问数组中的字符串:

JSON.parse()

请记住,无论何时解析您不确定有效的JSON字符串(通常是这种情况),您始终必须将try/catch调用包含在JSON.parse()块内,否则您的应用程序将在无效的JSON上崩溃。我注意到人们很少在示例中处理JSON.parse()错误,然后人们对他们的服务器崩溃并且不知道原因感到惊讶。这是因为try/catch会在错误的输入上抛出异常,并且必须与var array; try { array = JSON.parse(json); } catch (e) { // handle error } 一起使用才能避免崩溃整个应用:

var array = tryjson.parse(json);

您也可以使用tryjson

var string = array && array[0];

将自动为您执行此操作。现在你可以使用:

string

这里undefined变量将是try/catch如果JSON无效或数组不包含任何元素,或者将等于内部字符串,就像第一个带{的例子一样{1}}以上。