2017-08-28 77 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在我的價值,我讓我的字/句子/不管的第一個字母。當價值不是array而不是從開始的所有值開始arrays時,是否有另一種方法可以打印整個string

+0

? –

+1

你有類似'isArray()'的方法https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray - 你可以使用簡單的檢查如'result ['value']。 isArray()?結果['value'] [0]:result ['value']' – Kejt

+0

但是我想按照我的風格來做,如果可能的話,然後將第一個元素設置爲true,如果設置爲true,則將整個字符串設爲false。 –

回答

1

你可以使用簡單的檢查,像

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

編輯使用的方式這個功能要檢查的值是不正確的陣列

+0

非常感謝;) –

相關問題