在使用 `fetch` 结合 `async/await` 时,确实需要使用两个 `await` 来处理请求和响应。不过,你可以将这两个 `await` 放在同一行代码中,以使代码更加简洁。
例如:
```javascript
async function fetchData() {
try {
const data = await (await fetch('https://jsonplaceholder.typicode.com/todos/1')).json();
console.log(data);
} catch (error) {
console.error(error);
}
}
fetchData();
```
在上述代码中,我们使用了两个 `await`,但是将它们放在同一行代码中,以减少代码的冗余。首先,我们使用 `await fetch()` 等待 `fetch` 方法返回的 Promise 对象,并将其解析成 JavaScript 对象。然后,我们使用另一个 `await` 等待 `json()` 方法返回的 Promise 对象,并将其解析成 JavaScript 对象,保存到 `data` 变量中。最后,我们打印出 `data` 对象。
需要注意的是,这种写法虽然可以减少代码的行数,但是可能会降低代码的可读性,因此建议根据实际情况选择适合自己的写法。