找到 9301 篇文章 关于面向对象编程

如何在 JavaScript 中将数组与值为数组的对象合并

AmitDiwan
更新于 2020年9月18日 13:01:45

132 次浏览

假设我们有这样的数组和对象:const arr = [1, 2, 3, 4, 5]; const obj = {    group1: ["Ram", "Mohan", "Shyam"],    group2: ["Jai", "Dinesh"], };我们需要压缩数组和对象,以便数组中的值被分配给新的对象,这些对象以对象中的值为键。例如:const output = {    group1: {        "Ram": 1,        "Mohan": 2,        "Shyam": 3    },    group2: {        "Jai": 4,        "Dinesh": ... 阅读更多

在保持长度不变的情况下,从数组中删除重复项 - JavaScript

AmitDiwan
更新于 2020年9月18日 13:00:02

100 次浏览

我们需要编写一个函数,该函数接收一个数组,删除其中的所有重复项,并在末尾插入相同数量的空字符串。例如:如果我们找到四个重复值,我们必须删除它们并插入四个空字符串在末尾。示例以下代码:const arr = [1, 2, 3, 1, 2, 3, 2, 2, 3, 4, 5, 5, 12, 1, 23, 4, 1]; const deleteAndInsert = arr => {    const creds = arr.reduce((acc, val, ind, array) => {       let { count, res } = acc;       ... 阅读更多

查找嵌套数组中的最大值 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:58:04

2K+ 次浏览

假设我们必须在 JavaScript 中编写一个简单的函数,该函数接收以下数字数组(嵌套到任何级别):const arr = [    15, 24,    [        29, 85, 56,        [            36, 14, 6, 98, 34, 52        ],        22    ], 87, 60 ];并返回数组中最大的数字。例如,如果输入数组为:const arr = [    34, 65, 67,    [        43, 76, 87, 23, 56, 7,   ... 阅读更多

基于二维数组构建最大数组 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:56:22

93 次浏览

假设我们有一个如下所示的数字数组:const arr = [   [1, 16, 34, 48],   [6, 66, 2, 98],   [43, 8, 65, 43],   [32, 98, 76, 83],   [65, 89, 32, 4], ];我们需要编写一个函数,遍历这个数组并返回一个数组,该数组包含每个子数组中的最大(最大)元素。因此,对于上面的数组,输出应为:const output = [    48,    98,    65,    83,    89 ];示例以下代码用于获取每个子数组中的最大元素:const arr = [    [1, 16, 34, 48],    [6, 66, 2, 98],    [43, 8, 65, 43],    [32, 98, 76, 83],    [65, 89, 32, 4], ]; const constructBig = arr => {    return arr.map(sub => {       const max = Math.max(...sub);       return max;    }); }; console.log(constructBig(arr));输出这将在控制台中产生以下输出:[ 48, 98, 65, 98, 89 ]

相邻元素的平均值数组 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:55:17

237 次浏览

假设我们有一个数字数组:const arr = [3, 5, 7, 8, 3, 5, 7, 4, 2, 8, 4, 2, 1];我们需要编写一个函数,返回一个数组,其中包含相应元素及其前驱的平均值。对于第一个元素,由于没有前驱,因此应返回该元素本身。让我们为这个函数编写代码,我们将使用 Array.prototype.map() 函数来解决这个问题:示例const arr = [3, 5, 7, 8, 3, 5, 7, 4, 2, 8, 4, 2, 1]; const consecutiveAverage = arr => {    return ... 阅读更多

查找数组中第一个重复元素 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:53:51

137 次浏览

假设我们需要编写一个函数,返回在数组中至少出现两次的第一个元素的索引。如果没有任何元素出现超过一次,则必须返回 -1。我们必须在恒定空间中执行此操作(即,不使用额外的内存)。因此,让我们为这个问题编写解决方案。我们将使用 for 循环迭代数组,并使用 Array.prototype.lastIndexOf() 方法来检查重复性。示例以下代码:const arr1 = [0, 1, 1, 2, 3, 4, 4, 5]; const firstRedundant = arr => {    for(let ... 阅读更多

在数组的假值索引处插入元素 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:51:31

145 次浏览

我们需要编写一个数组函数,例如 pushAtFalsy()。该函数应该接收一个数组和一个元素。它应该将元素插入在数组中找到的第一个假值索引处。如果没有空位,则应将元素插入到数组的末尾。我们将首先搜索空位置的索引,然后用我们提供的元素替换那里的值。示例以下代码:const arr = [13, 34, 65, null, 64, false, 65, 14, undefined, 0, , 5, , 6, ,85, ,334]; const pushAtFalsy = function(element){ ... 阅读更多

JavaScript 中的另一种洗牌方式

AmitDiwan
更新于 2020年9月18日 12:50:25

253 次浏览

另一种洗牌方式JavaScript 中的另一种洗牌数组是一个数字数组,其中数字的索引方式使得最大数字后面跟着最小元素,第二大数字后面跟着第二小元素,依此类推。例如:如果输入数组为:const arr = [11, 7, 9, 3, 5, 1, 13];则输出应为:const output = [13, 1, 11, 3, 9, 5, 7];示例以下代码:const arr = [11, 7, 9, 3, 5, 1, 13]; const sorter = (a, b) => a - b; const alternateShuffle = (arr) => {    const array ... 阅读更多

使用递归从数组中删除连续的重复项 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:49:18

455 次浏览

我们应该编写一个函数,该函数接收一个数字/字符串文字数组。该函数应删除数组中所有冗余的连续元素,而无需使用额外的内存空间。例如,如果输入数组为:const arr = [17, 17, 17, 12, 12, 354, 354, 1, 1, 1];则输出应为:const output = [17, 12, 354, 1];示例以下代码:const arr = [17, 17, 17, 12, 12, 354, 354, 1, 1, 1]; const comp = (arr, len = 0, deletable = false) => {    if(len < arr.length){       if(deletable){          arr.splice(len, 1);          len--;       }       return comp(arr, len+1, arr[len] === arr[len+1])    };    return; }; comp(arr); console.log(arr);输出这将在控制台中产生以下输出:[ 17, 12, 354, 1 ]

将相同的条目分组到子数组中 - JavaScript

AmitDiwan
更新于 2020年9月18日 12:47:12

126 次浏览

假设我们有一个包含相同条目的数字数组。我们需要编写一个函数,接收该数组并将所有相同的条目分组到一个子数组中,然后返回由此形成的新数组。例如:如果输入数组为:const arr = [234, 65, 65, 2, 2, 234];则输出应为:const output = [[234, 234], [65, 65], [2, 2]];我们将使用哈希图来跟踪已经出现的元素,并使用 for 循环迭代数组。示例以下代码:const arr = [234, 65, 65, ... 阅读更多

广告