const token = [
{"token":"d2r4Z62OTGiPyNmdHTUfny",
"time":1652767811},
{"token":"dnl13twkQIqifdvaxp1t6e",
"time":1652767811},
{"token":"eDZxQu0FSWm72D2-T1md5X",
"time":1652767811},
{"token":"dnl13twkQIqifdvaxp1t6e",
"time":1652767811}]; // Try edit me
const arr = [];
for (var i=0; i<=token.length-1; i )
{
const millis = Date.now();
const time = Math.floor(millis / 1000);
if (token[i].time > time) {
arr.push(token[i].token)
}
}
console.log(arr);
這兩個令牌變數之間是相同的,我想將它們彼此區分開來,我該怎么做?示例輸出:
const example = [
"d2r4Z62OTGiPyNmdHTUfny",
"eDZxQu0FSWm72D2-T1md5X",
"dnl13twkQIqifdvaxp1t6e"
];
console.log(example);
uj5u.com熱心網友回復:
只需使用 aSet因為它不允許重復:
const tokens = [
{"token":"d2r4Z62OTGiPyNmdHTUfny", "time":1652767811},
{"token":"dnl13twkQIqifdvaxp1t6e", "time":1652767811},
{"token":"eDZxQu0FSWm72D2-T1md5X", "time":1652767811},
{"token":"dnl13twkQIqifdvaxp1t6e", "time":1652767811}
];
const now = Math.floor(Date.now() / 1000);
const result = new Set(
tokens.filter(({ time }) => time > now).map(({ token }) => token)
);
console.log(...result);
uj5u.com熱心網友回復:
當前邏輯的最簡單方法是您可以使用它includes來檢查token結果arr。如果它在arr,我們不需要將它推到arr。
const token = [
{"token":"d2r4Z62OTGiPyNmdHTUfny",
"time":1652767811},
{"token":"dnl13twkQIqifdvaxp1t6e",
"time":1652767811},
{"token":"eDZxQu0FSWm72D2-T1md5X",
"time":1652767811},
{"token":"dnl13twkQIqifdvaxp1t6e",
"time":1652767811}];
const arr = [];
for (var i=0; i<=token.length-1; i )
{
const millis = Date.now();
const time = Math.floor(millis / 1000);
if (!arr.includes(token[i].token) && token[i].time > time) {
arr.push(token[i].token)
}
}
console.log(arr);
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/476186.html
標籤:javascript 数组
