React基于ES6语法糖判断数据存放在哪个数组中。

/*
	name:'李小小',
	time:'2018-11-22',
	type:'React <---> demo'
*/
import React from 'react';

let inArray = function (item,array) {
    if(!array || array.length === 0)
        return false;
    for(let i = 0; i < array.length ; i ++){
        if(array[i] === item)
            return true;
    }
    return false;
};

export default class extends React.Component{
    constructor(props) {
        super(props);
        this.state = {
            id : 4 ,
            types: {
                "first": [1, 2, 3],
                "last" : [4,5]
            },
            value:'',
        }
    }

    renderValue(){
        let {id, types} = this.state;
        let value = () =>{
            if(!id)
                return '空';
            for(let i in types){
                let array = types[i];
                if(inArray(id,array)){
                    switch (i) {
                        case "first" :
                            return 'first';
                        case "last" :
                            return 'last';
                    }
                }
            }
            return '空值 ==> 报错';
        };
        console.log(value());
        this.setState({
            value:value()
        })
    }

    componentDidMount(){
        this.renderValue();
    }

    render(){
        let {value} = this.state;
        return(
            <div>
                {'当前ID在' + value +'数组中;'}
            </div>
        )
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值