首页 > 解决方案 > 数组在反应js中打印为字符串

问题描述

当我们尝试打印数组时,react 如何处理数组?

class App extends Component {
        constructor() {
          this.state = { 
            myarr: [1, 2, 3, 4, 5] 
          };
        }
        render(){
          return <div>{this.state.myarr}</div> 
          // it prints 12345.... I am able to understand why???
        } 
        }
    }

标签: javascriptreactjs

解决方案


看起来您只想将数组显示为数组。

您可以使用JSON.stringify(array). 喜欢

class App extends React.Component {
  render() {
    const data = [1, 2, 3, 4, 5];

    return <div>{JSON.stringify(data)}</div>;
  }
}

ReactDOM.render(<App/>, document.getElementById('root'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>

<div id='root'/>

为什么您的代码会打印12345,因为您正在让它这样做。{..}表达式中的任何内容都显示了它的值


推荐阅读