Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.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,所以我有这个字符串(添加了换行符): 我可以使用什么算法来获取一个数组中的所有类型值?因此,结果将是“一”、“二”、“三”、“四” 这将获得所需的类型并将它们粘贴到类型数组中。您可以将字符串解析为一个对象,然后使用.map()创建一个包含所有类型值的数组 var str='[{“id”:1,“type”:“one”,“status”:“pending”,“user_id”:2},{“id”:2,“type”:“two”,“status”:“pending”,“user_id”:14},{“id

所以我有这个字符串(添加了换行符):

我可以使用什么算法来获取一个数组中的所有类型值?因此,结果将是“一”、“二”、“三”、“四”


这将获得所需的类型并将它们粘贴到类型数组中。

您可以将字符串解析为一个对象,然后使用.map()创建一个包含所有类型值的数组

var str='[{“id”:1,“type”:“one”,“status”:“pending”,“user_id”:2},{“id”:2,“type”:“two”,“status”:“pending”,“user_id”:14},{“id”:3,“type”:“three”,“status”:“queue”,“user_id”:5},{“id”:4,“type”:“four”,“status”:“queue”,“user_id”:8});
var array=JSON.parse(str);
var myarray=array.map(函数(项){
返回项目.type;
});

log(myarray)如果您正在编写ES6,请遵循@ArunPJohny:

array.map(elt => elt.type)


这看起来像JSON,可能应该这样处理。它是JSON,但我很好奇我可以用字符串运算符处理它。不,你不想使用字符串运算符。由于它是一个数组(解析后),我建议使用“循环”来循环数组的元素。然后,您可以从每个元素中检索
type
属性,并将其放入列表中。顺便问一下,您希望如何处理重复项?虽然在这种情况下可能无关紧要,但通常不鼓励使用
for…in
在数组上循环,最好不要养成这样做的习惯。看见
var obj = JSON.parse(str);
var types = [];
for (var i in obj) {
    types.push(obj[i].type);
}
array.map(elt => elt.type)
[ for (elt of array) elt.type ]