[英]Object.values seems not to work in enum type
我在我的應用程序中定義了這個枚舉:
export enum Status {
BOOKED = 'B',
FREE = 'F',
}
我在控制台上添加了這條消息
console.log ('<------------------------------------>');
console.log (code.value);
console.log (Object.values(Status));
console.log (code.value in Object.values(Status));
console.log ('<------------------------------------>');
<------------------------------------>
我在控制台上看到了這個,code.value 不包含在枚舉中; 我應該看到真實的
B
[ 'B', 'F' ]
false
你有這個 object
export enum Status {
BOOKED = 'B',
FREE = 'F',
}
Object.values(Status)
會給你[ 'B', 'F' ]
這是預期的
閱讀此內容以獲取更多信息 -
Object.values() 方法返回給定對象自己的可枚舉屬性值的數組,其順序與 for...in 循環提供的順序相同。 (唯一的區別是 for...in 循環也枚舉原型鏈中的屬性。)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/values
您應該使用array.include()
檢查數組是否包含值https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includes
const values = Object.values(Status);
console.log(values.includes(code.value));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.