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,我发出了一个获取请求(我将文本转换为数组),我希望它们在另一个函数中意外地传递每个数组元素。 这有一些异步问题,wait可以解决: async function randomSingleWord() { let data = await fetch('http://www.randomtext.me/api/'); let words = data.text_out.split(' '); return words[Math.floor(Math.random() * word

我发出了一个获取请求(我将文本转换为数组),我希望它们在另一个函数中意外地传递每个数组元素。


这有一些异步问题,
wait
可以解决:

async function randomSingleWord() {
  let data = await fetch('http://www.randomtext.me/api/');

  let words = data.text_out.split(' ');

  return words[Math.floor(Math.random() * words.length)];
}

现在这是一个承诺,所以
然后
等待
适用。

现在是2020年,我们现在有
等待
。这将有助于减少需要编写的代码量。这是在问“如何在JavaScript中无序排列数组?”还是“如何从JavaScript数组中选择随机元素?”是的,我在问这个问题。“如何在JavaScript中无序排列数组?”还是“如何从JavaScript数组中选择随机元素?”这回答了您的问题吗?由于
fetch
是异步的,因此此
返回数据
没有意义。也就是说,这个随机词函数总是返回未定义的。我认为首先您需要返回
fetch
(在第一行
return fetch(…
)的结果。然后调用者将得到一个承诺,它可以像
randomSingleWord那样使用。然后((arrayOfWords)=>{})
这个函数可以用
arrayOfWords
做任何它想做的事情。添加.json怎么样?这个数据是不是json?如果是,那么
json.parse
可以解决它。
async function randomSingleWord() {
  let data = await fetch('http://www.randomtext.me/api/');

  let words = data.text_out.split(' ');

  return words[Math.floor(Math.random() * words.length)];
}