1:对象转数组:
https://blog.csdn.net/qq_38643776/article/details/81544942
2:如何构建一个对象数组
arry=[];
ngOnInit() {this.arry.push({name:'大树',age:13}, {name:'小花',age:13})console.log("----------这个数组是",this.arry);
}
效果
3:从A中提取部分数据组成B:
ar=[{name:'大树',age:13,sex:'男'
}, {name:'小花',age:13,sex:'女'
}]
arry=[];
ngOnInit() {this.ar.map(data=>{this.arry.push({name:data.name,age:data.age})})console.log("----------这个数组是",this.arry);
}
4:把一个字符串分割成字符串数组(即字符串转数组)
str="hello world"angOnInit() {this.a=this.str.split(" ")console.log("-----------",this.a)}
5:数组删除重复元素:
<script type="text/javascript">arry=[0,3,2,4,2,6,8,3,2,1];list= method4 ();function method4 (){//将数组进行排序arry.sort();//定义结果数组var arr=[arry[0]];for(var i = 1; i < arry.length; i++){ //从数组第二项开始循环遍历数组//判断相邻两个元素是否相等,如果相等说明数据重复,否则将元素写入结果数组if(arry[i] !== arr[arr.length - 1]){arr.push(arry[i]);}}return arr;}
</script>
6 A B 组成C
var C= [];
for (var key in A) { // 对于对象的遍历用 for in key就是A和B数组的下标 所以这里A和B最好是都是对象技巧:一层遍历,就取得啦A和B
var temp = new Object(); // 生成一个新对象
temp.name=vm.dataObjFields[key].ch; // 取出A值
temp.value=parseInt(data[key]); // 取出B的中文名字
C.push(temp); 将生成的一个一个对象,放到数组里{}{}{}=》[{},{},{}]
或者:直接放到数组里
C.push({value:data[key], // 取出A值name:ctrl.B[key].ch // 取出B的中文名字})
}
其中A={}
B={ {},{},{},{}}
C=[{},{},{}]
7 数据循环解析
ctrl.vehicleType = [
{value: '1', label: '燃油车'},
{value: '2', label: '电车'},
{value: '3', label: '油电混合电力车'},
{value: '4', label: '燃气车'},
{value: '5', label: '气电混合电力车'},
];
ctrl.vehicleType.forEach(function (t) { }) t是{}
ctrl.vehicleType.map(function (t) { }) t是{}
for ( var key in ctrl.vehicleType) key 是下标 0 1 2 想达到和上面的效果,要使用 ctrl.vehicleType[key]
8 对象之间找一样的
var arr1={name:{},age:{},tel:{}
}
var arr2={name:{},age:{},
}
for(var i in arr1){if (arr2.hasOwnProperty(i)){console.log("++++++++++",i)console.log("++++++++++",arr2[i])}
}
<script>var arr1=["name","age","tel"]var arr2={name:{},age:{},}for(var i in arr1){key=arr1[i];if (arr2.hasOwnProperty( key)){console.log("++++++++++",key)console.log("++++++++++",arr2[key])}} </script>