Vue.jsを学習中なのですが、javascriptの比較演算子の意味がよく分からず、行き詰まっています。。。
下記script
JavaScript
1 computed: { 2 result: function() { 3 let list = items.slice(); 4 if(this.sort.key){ 5 list.sort((a,b)=> { 6 a = a[this.sort.key]; 7 b = b[this.sort.key]; 8 return ( a === b ? 0 : a > b ? 1 : -1) * (this.sort.isAsc ? 1 : -1); 9 }); 10 } 11 return list; 12 } 13 },
のコード内の
javascript
1return ( a === b ? 0 : a > b ? 1 : -1) * (this.sort.isAsc ? 1 : -1);
を言語化した場合、
( a === b ? 0 : a > b ? 1 : -1)の箇所は、
a(左辺) と、b ? 0 : a > b ? 1 : -1(右辺)が一致する場合はtrueを返す。 ということだと思うのですが、b ? 0 : a > b ? 1 : -1(右辺) の意味が全く理解できません。。。。
(this.sort.isAsc ? 1 : -1); も理解できていません。
javascript
1( a === b ? 0 : a > b ? 1 : -1)
javascript
1(this.sort.isAsc ? 1 : -1);
それぞれは何を意味しているのか教えてください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/06 09:57