我試圖從網站上的 cookie 中獲取值的一部分。所以我撰寫了代碼來獲取 cookie 值,效果很好。我嘗試將回傳值的 JSON.stringify() 轉換為字串,但將其轉換為空物件。我懷疑這是因為回傳的物件是一個 Promise 物件,但我不知道為什么會有所不同。這是我到目前為止所做的。
const getCookie = async (name) => {
const cookie = await cookieStore.get(name);
if(cookie) {return cookie.value}
else {console.log('cookie not found')}
}
const cookievalue = getCookie('foo');
這將回傳:
Promise {<fulfilled>: 'locale=es_us'}
這實際上是我想要的 cookie 值。但是如果我然后運行:
const newcookievalue = JSON.stringify(cookievalue);
我得到:
'[object Promise]'
順便說一下,我想做的是對那個值運行一個 IF 陳述句——如果它是“es_us”做一件事,如果它是“en_us”做另一件事。因此,現在 getCookie 上的 IF 陳述句實際上只是在控制臺中測驗我可以獲取并將值轉換為字串,然后再將代碼放入我的應用程式中。
uj5u.com熱心網友回復:
要從async函式中獲取值,您應該使用await關鍵字。像這樣:
const cookievalue = await getCookie('foo');
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/375502.html
標籤:javascript 饼干 es6-promise 饼干店
上一篇:Js秘密圣誕老人演算法
下一篇:頁面重繪后更改輸入位置
