[英]Check javascript object property type
我想知道是否有一種方法可以在javascript中定義對象屬性類型。 我的意思是,如果我有一個對象,並且想要確保a
屬性是一個字符串,是否有辦法做到這一點?
到目前為止,我已經找到了使用getter和setter方法的解決方案:
const anObject = {
"value": "a value",
get a () {
return this.value
},
set a (val) {
if (typeof(val) == "string") {
this.value = val
} else {
throw "Invalid type!"
}
}
}
這樣有效嗎? 有一個更好的方法嗎? 謝謝!
PS我知道js是一種非類型化的語言,因此我不希望有任何神奇的答案,但是也許人們想出了一些明智的解決方法。
我將值設為對象的屬性,並使用模塊reveakl patter對其進行封裝。 因為現在沒有什么可以阻止我向您的價值求索
function value () {
let value = "";
return {
get () {
return value
},
set (val) {
if (typeof val !== 'string') {
return
}
value = val
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.