JS数组判断值是否存在于指定数组中
JavaScript Code复制内容到剪贴板
- if (this.bedroomNum.indexOf(id) === -1) {
- this.bedroomNum.push(id)
- } else {
- this.bedroomNum.splice(this.bedroomNum.indexOf(id), 1)
- }
通过indexOf(id)判断这个选中的id是否在bedroomNum数组中存在,如果不存在会返回-1,则通过push将这个id添加到这个数组中。否则就是存在的,通过splice(这个id在数组中的索引,1)删除。
来看一些VUE中具体的实现代码:
html结构中:
XML/HTML Code复制内容到剪贴板
- <ul class="searchType_bedroom" v-if="searchType === 2">
- <li @click="allBedroom">不限</li>
- <li v-for="item in bedroom" @click="change_bedroom(item.bedroom)">{{item.name}}<span :class="bedroomNum.indexOf(item.bedroom) !== -1 ? 'isSelect' : '' ">✔</span></li>
- <li class="submit" @click="submitBedroon">确认</li>
- </ul>
vue data () 中:
JavaScript Code复制内容到剪贴板
- bedroom: [{name: '一室', bedroom: '1'},
- {name: '二室', bedroom: '2'}, {name: '三室', bedroom: '3'},
- {name: '四室', bedroom: '4'}, {name: '五室', bedroom: '5'},
- {name: '五室以上', bedroom: ''}],
vue methods方法中:
JavaScript Code复制内容到剪贴板
- change_bedroom (id) {
- if (this.bedroomNum.indexOf(id) === -1) {
- this.bedroomNum.push(id)
- } else {
- this.bedroomNum.splice(this.bedroomNum.indexOf(id), 1)
- }
- },
上一篇 vue demo详解