TypeScript数组和对象的操作
- 一、数组的声明
- 二、数组初始化
- 三、数组元素赋值、添加、更改
- 四、删除
- 五、合并、断开数组
- 六、查找数组元素
- 七、连接数组元素
- 八、排序、反序数组
- 九、遍历数组,对象
一、数组的声明
let arr1: Array<number>;
let arr2: number[];
二、数组初始化
let arr1: Array<number> = new Array<number>();
let arr2: number[] = [1,2,3];
三、数组元素赋值、添加、更改
let a:number;
a = 1;
console.log(a); let b: string;
b = "string";
console.log(b);
let arr1: Array<number>;
let arr2: Array<number> = new Array<number>();
arr2[0] = 1;
arr2.push(2);
arr2.unshift(3)
console.log(arr2)
四、删除
let arr: Array<number> = [1,2,3,4,5]
arr.pop();
console.log(arr); arr.shift();
console.log(arr); arr.splice(0,2);
console.log(arr);
五、合并、断开数组
let arr: Array<number> = [1,2,3]
let arr2: Array<number> = [4,5,6]
let arrValue = 7arr = arr.concat(arr2)console.log(arr) arr = arr.concat(arrValue)console.log(arr) let newArray = arr.slice(1, 3)
console.log(newArray)
六、查找数组元素
let arr: Array<string> = ["a", "b", "c", "d"]let index = arr.indexOf("c")
console.log(index) index = arr.lastIndexOf("d")
console.log(index)
let persons = [{ id: 1, name: '张三', age: 23 },{ id: 2, name: '李四', age: 11 },{ id: 3, name: '王五', age: 16 }
];
const person = persons.find(obj => {return obj.id === 2;
})console.log(person);
const p1 = persons.filter(obj => {return obj.id == 2;
})console.log(p1); const p2 = persons.filter(obj => {return obj.id != 2;
})console.log(p2);
const c1 = persons.findIndex(person => {return person.name == "李四"
})console.log(c1);
console.log(persons[c1])
七、连接数组元素
let arr: Array<string> = ["a", "b", "c", "d"]let joinString = arr.join(",")
console.log(joinString) joinString = arr.join("-")
console.log(joinString)
八、排序、反序数组
let arr: Array<number> = [1,4,3,5,2]arr.sort()
console.log(arr) arr.reverse()
console.log(arr)
九、遍历数组,对象
let persons = [{ id: 1, name: '张三', age: 23 },{ id: 2, name: '李四', age: 11 },{ id: 3, name: '王五', age: 16 }
];
- for 循环
for ( let index = 0; index < persons.length; ++index) {console.log(persons[index]);
}
- for…in 循环
for (let index in persons) {console.log(persons[index])
}
- for…of循环
for (let person of persons) {console.log(person)
}
- forEach循环
persons.forEach((value, index, array) => {console.log(value, index)
})