[英]Is there a way to get function or or property in Javascript object
例如,有一個對象顏色。
colors = {
white: '#fff',
whiteF: (opacity=1) => `rgba(255,255,255,${opacity})`
}
有沒有更好的方法來像這樣連接它們:如果我調用colors.white
它將調用十六進制,如果我調用colors.white(.3)
它將得到 rgba 一個。
在函數內部設置條件應該可以解決問題(使用默認值)
const colors = {
white: (opacity=1) => {
if(opacity === 1){
return '#fff'
}else{
return`rgba(255,255,255,${opacity})`
}
}
}
> colors.white()
'#fff'
> colors.white(.3)
'rgba(255,255,255,0.3)'
您可以使用函數作為用戶屬性或基於傳遞給它的參數的方法的委托人,如下所示:
colors = {
white: '#fff',
whiteF: (opacity=1) => `rgba(255,255,255,${opacity})` ,
getColor:function(opacity){
if(opacity)
return this.whiteF(opacity);
else {
return this.white;
}
}
}
console.log(colors.getColor());
console.log(colors.getColor(0.3));
有了這個,您的方法調用將返回屬性或函數調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.