2017-08-28 7 views
0

html tableに自分の値を表現する際に問題があります。私はarrayの値を持っています、それらのほとんどはstringsですが、プログラムが動作するうちのいくつかはarraysになります。私がここにいるような何か:値が配列かどうかを確認して最初の要素を取得する方法

if(res.data.results[elem]['value'].toLowerCase() === nextProps.value){ 
    res.data.results[elem]['value'] = [res.data.results[elem]['value'], 'black']; 
    res.data.results[elem]['another_value'] = [res.data.results[elem]['another_value'], 'black']; 
} 

私は既にチェックしたように色をつけてみます。私はすでに管理としてそして私はこの方法では、tableでそれらを印刷:

<td style={{'color': result['value'][1]}}>{result.value[0]}</td> 
<td style={{'color': result['another_value'][1]}}>{result.another_value[0]}</td> 

私は私の値にのみstringを持っているとき、私は私の言葉/文/何の最初の文字を取得します。最初にすべての値からarraysにするのではなく、値がarrayでないときにstring全体を印刷する別の方法はありますか?

+0

が正しくないの配列で使用する方法を編集しましたか? –

+1

あなたは 'isArray()'のようなメソッドを持っています。https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray - 'result ['value']のような単純なチェックを使うことができます。 isArray()? result ['value'] [0]:result ['value'] ' – Kejt

+0

しかし可能ならば私のスタイルでやりたいと思っています。 –

答えて

1

あなたは

Array.isArray(result['value']) ? result['value'][0] : result['value'] 

のような簡単なチェックを使用することができますが、あなたが値をチェックしたいこの機能

+0

ありがとう;) –

関連する問題