如何在 TypeScript 中将元素推入数组开头?
在本教程中,我们将学习如何在 TypeScript 中将元素推入数组的开头。在 TypeScript 中,有多种方法可以将单个或多个元素推入数组的开头。
在这里,我们将学习三种不同的方法来将数组元素推入数组的起始索引。
使用 Array.unshift() 方法
TypeScript 的 Array.unshift() 方法允许我们将元素添加到数组的开头。此外,我们还可以使用 Array.unshift() 方法在数组开头添加多个元素。
语法
用户可以按照以下语法使用 array.unshift() 方法将元素插入数组开头。
var nums : Array<number> = [2, 3, 4, 5]; nums.unshift(element);
在上述语法中,我们已将“element”插入到数组的开头。
参数
element − 它是要添加到数组开头的元素。用户可以添加多个以逗号分隔的元素作为参数。
示例
var nums : Array<number> = [2, 3, 4, 5];
// add single element at the start of the number array.
nums.unshift(1);
console.log("After adding single elements to the starting of the nums array: " + nums);
// creating array of strings
var welcome : Array<string> = ["TutorialsPoint", "!"];
// Add multiple string elements at the start of the array.
welcome.unshift("Welcome","To");
console.log("After adding multiple elements to the starting of the Welcome array: " + welcome);
编译后,它将生成以下 JavaScript 代码:
var nums = [2, 3, 4, 5];
// add single element at the start of the number array.
nums.unshift(1);
console.log("After adding single elements to the starting of the nums array: " + nums);
// creating array of strings
var welcome = ["TutorialsPoint", "!"];
// Add multiple string elements at the start of the array.
welcome.unshift("Welcome", "To");
console.log("After adding multiple elements to the starting of the Welcome array: " + welcome);
输出
以上代码将产生以下输出:
After adding single elements to the starting of the nums array: 1,2,3,4,5 After adding multiple elements to the starting of the Welcome array: Welcome,To,TutorialsPoint,!
在上面示例的输出中,用户可以观察到 1 已插入到“nums”数组的开头,并且 [‘welcome’, ’ To’] 已添加到“welcome”数组的开头。
使用 Array.splice() 方法
Array.splice() 方法允许我们将元素插入到数组的任何位置。此外,我们可以在特定位置范围内将多个元素插入到数组中。
语法
用户可以按照以下语法使用 Array.splice() 方法将数组插入开头。
var strings: Array<string> = ["Two", "Three", "four", "five"]; strings.splice(start_index, end_index, element);
在上述语法中,我们创建了字符串数组并使用了 array.unshift() 方法将元素插入数组。
参数
start_index − 在我们的例子中,我们将使用 0 作为 start_index 的值,以将元素插入开头。
end_index − 对于 end_index,我们也将使用 0,因为我们希望在 0 到 0 的范围内插入元素。
element − 它是需要插入开头的元素。
示例
在下面的示例中,我们创建了字符串“nums”数组。之后,我们使用 Array.unshift() 方法将元素插入数组的第 0 个索引。在输出中,用户可以看到“one”已添加到数组的开头。
// creating array of strings
var strings: Array<string> = ["Two", "Three", "four", "five"];
// Add element at 0th index of the array using the array.splice
strings.splice(0, 0, "one");
console.log("After adding one to the starting of the strings array: " + strings);
编译后,它将生成以下 JavaScript 代码:
// creating array of strings
var strings = ["Two", "Three", "four", "five"];
// Add element at 0th index of the array using the array.splice
strings.splice(0, 0, "one");
console.log("After adding one to the starting of the strings array: " + strings);
输出
以上代码将产生以下输出:
After adding one to the starting of the strings array: one,Two,Three,four,five
使用 Array.push() 方法
array.push() 方法允许我们将元素插入数组的末尾,但我们可以创建一些自定义算法,将最后一个元素移到数组的开头。
语法
用户可以按照以下语法使用 array.push() 方法将元素插入开头。
var arr: Array<number> = [3, 4, 5, 6, 7, 8];
arr.push(element);
for (let i = arr.length-1; i > 0; i--) {
let temp = arr[i];
arr[i] = arr[i - 1];
arr[i - 1] = temp;
}
在上述语法中,我们使用 array.push() 方法在数组末尾添加了一个元素,并将其移到了第一个位置。
算法
用户应遵循以下算法将元素插入数组开头。
步骤 1 − 使用 array.push() 方法将元素插入数组末尾。
步骤 2 − 之后,将第 n 个元素与第 n-1 个元素交换,将第 n-1 个元素与第 n-2 个元素交换,依此类推。用户可以使用 for 循环并将前 n-1 个元素与最后一个元素交换,以将其移到第一个位置。
示例
在下面的示例中,我们创建了数字数组。“insertAtStart()”函数实现了上述算法,将数组元素插入开头。我们分别通过传递 2 和 1 作为参数调用了两次“insertAtStart()”函数,用户可以在输出中看到结果。
var arr: Array<number> = [3, 4, 5, 6, 7, 8];
function insertAtStart(element: number) {
// push element at the last of the array
arr.push(element);
// Move last element to the first by swapping the values of the array.
for (let i = arr.length-1; i > 0; i--) {
let temp = arr[i];
arr[i] = arr[i - 1];
arr[i - 1] = temp;
}
console.log("After adding " + element + " to the start of array: " + arr);
}
insertAtStart(2);
insertAtStart(2);
编译后,它将生成以下 JavaScript 代码:
var arr = [3, 4, 5, 6, 7, 8];
function insertAtStart(element) {
// push element at the last of the array
arr.push(element);
// Move last element to the first by swapping the values of the array.
for (var i = arr.length - 1; i > 0; i--) {
var temp = arr[i];
arr[i] = arr[i - 1];
arr[i - 1] = temp;
}
console.log("After adding " + element + " to the start of array: " + arr);
}
insertAtStart(2);
insertAtStart(2);
输出
以上代码将产生以下输出:
After adding 2 to the start of array: 2,3,4,5,6,7,8 After adding 2 to the start of array: 2,2,3,4,5,6,7,8
本教程介绍了三种不同的方法来将元素插入 TypeScript 数组的开头。Array.unshift() 方法是最简单的方法,因为它将用户想要插入开头的值作为参数。对于单个元素,用户还可以使用 array.splice() 方法。第三种方法是自定义构建的,其时间复杂度也是 O(n)。因此,建议使用 Array.unshift() 方法,因为它语法简单。
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP