1. 程式人生 > >React js常用方法

React js常用方法

//查詢陣列中的匹配物件,並返回
let changeItem = this.state.filter.filter(item => {
  return item.value == value;
});
console.log(changeItem[0]);


//陣列放值
let userIds = [];
let hasAssignUsers = [{id:1,name:2},{id:2,name:2}]
//方法一:for迴圈
if(hasAssignUsers){
    for(let item of hasAssignUsers) {
        userIds.push
(item.id) } } //方法二:concat()方法 userIds = userIds.concat(hasAssignUsers); console.log(userIds); //渲染頁面 const listItems = hasAssignUsers.map((item) => <Tag key={item.id.toString()} value={item.id.toString()} shape="deletable" type="primary" onClose={this.onClose} > {
item.userName} </Tag> ); //移除陣列物件中的匹配的物件 //方法一:(普通資料型別) remove = (arr, id) =>{ var newarr = arr.slice(0); for(var i=0;i<newarr.length;i++){ if(newarr[i] == id){ newarr.splice(i,1); i--; } } return newarr; }; //方法二:(物件) removeObj = (arr,
id) =>{ var newarr = arr.slice(0); for(var i=0;i<newarr.length;i++){ if(newarr[i].id == id){ newarr.splice(i,1); i--; } } return newarr; }; //陣列是否存在某值判斷 1.javascript的indexOf()方法 var arr_data = [1,2,3]; arr_data.indexOf(1); //如果存在返回值的下標,不存在返回-1 4.arr.findIndex()返回第一個符合條件的陣列元素的位置,如果所有的元素都不符合條件,則返回-1. 注意:find(),findIndex()彌補了index的不足:(即判斷NAN[NaN].indexOf(NaN) // -1 [NaN].findIndex(y => Object.is(NaN, y))// 0 //陣列物件去除重複 //方法一:(普通資料型別陣列去重) let has = [1,2,3] let add = [2,3,4] has = has.concat(add) console.log(has) //1,2,3,2,3,4 has = [...new Set(has)] console.log(has) //1,2,3,4 //方法二:(物件陣列去重) let arr1 = [{id:1,name:'1'},{id:2,name:'2'},{id:3,name:'3'}]; let arr2 = [{id:2,name:'2'},{id:3,name:'3'},{id:4,name:'4'}]; arr1 = arr1.concat(arr2); arr1 = uq(arr1); uq = (array) =>{ var del = []; for (var i = 0, arrayLen = array.length; i < arrayLen; i++) { for (var j = 0, delLen = del.length; j < delLen; j++ ) { if (array[i].id === del[j].id) { break; } } if (j === delLen) { del.push(array[i]) } } return del; };