274 次浏览
我们需要编写一个数组函数 midElement(),该函数返回数组的最中间元素,无需访问其 length 属性,也无需使用任何类型的内置循环。如果数组包含奇数个元素,我们返回中间的一个元素;如果数组包含偶数个元素,我们返回包含两个中间元素的数组。示例以下代码 −const arr = [14, 32, 36, 42, 45, 66, 87]; const array = [13, 92, 83, 74, 55, 46, 74, 82]; const midElement = (arr, ind = 0) => { if(arr[ind]){ ... 阅读更多
245 次浏览
假设我们需要编写一个 JavaScript 函数,该函数接收一个包含重复条目的数字数组,并将所有重复条目求和到一个索引中。例如 −如果输入数组是 −const input = [1, 3, 1, 3, 5, 7, 5, 4];那么输出应该是 −const output = [2, 6, 7, 10, 4];这意味着所有重复的 1 求和到索引 0,所有重复的 3 求和到索引 1,依此类推。示例以下代码 −const input = [1, 3, 1, 3, 5, 7, 5, 4]; const mergeDuplicates = arr => ... 阅读更多
483 次浏览
假设我们需要编写一个函数,该函数将字符串/数字文本数组 arr 作为第一个参数,将数字 n 作为第二个参数。我们需要返回一个包含 n 个子数组的数组,每个子数组最多包含 arr.length / n 个元素。元素的分布应该如下 −第一个元素进入第一个子数组,第二个元素进入第二个子数组,第三个元素进入第三个子数组,依此类推。一旦每个子数组中都有一个元素,我们再次开始用第二个元素填充第一个子数组。同样,当所有子数组都有两个... 阅读更多
635 次浏览
我们有两个数字数组,我们需要编写一个函数,例如 intersection(),该函数计算它们的交集并返回一个包含交集元素的数组(顺序任意)。结果中的每个元素出现的次数应与其在两个数组中出现的次数相同。例如 −如果输入是 −arr1 = ['hello', 'world', 'how', 'are', 'you']; arr2 = ['hey', 'world', 'can', 'you', 'rotate'];那么输出应该是 −输出:['world', 'you'];方法如果数组已排序,我们可以使用双指针方法,最初两个指针都指向各自数组的开头(0),然后我们... 阅读更多
206 次浏览
假设我们有一个这样的数字数组 −const arr = [-1, -2, -1, 0, -1, -2, -1, -2, -1, 0, 1, 0];我们需要编写一个 JavaScript 函数来计算数组中连续的非负数(正数和 0)组的数量。这里,从索引 3 到 3(只有一个元素,但仍然是一个簇)的连续非负数构成一组,然后从 9 到数组末尾构成第二组。因此,对于此数组,该函数应返回 2。示例以下代码 −const arr = [-1, -2, -1, 0, -1, -2, -1, ... 阅读更多
2K+ 次浏览
假设我们需要编写一个 JavaScript 函数,该函数接收一个数字数组并返回一个新数组,其元素为原始数组中两个连续元素的和。例如,如果输入数组是 −const arr = [3, 6, 3, 87, 3, 23, 2, 2, 6, 8];那么输出应该是 −const output = [9, 90, 26, 4, 14];示例以下代码 −const arr = [3, 6, 3, 87, 3, 23, 2, 2, 6, 8]; const twiceSum = arr => { const res = []; for(let i = 0; i < arr.length; i += 2){ res.push(arr[i] + (arr[i+1] || 0)); }; return res; }; console.log(twiceSum(arr));输出这将在控制台中生成以下输出 −[ 9, 90, 26, 4, 14 ]
79 次浏览
我们有一个这样的文本数组 −const arr = [56768, 5465, 5467, 3, 878, 878, 34435, 78799];我们需要编写一个 JavaScript 函数,该函数接收此数组和一个数字 n,如果相应的元素包含大于或等于 n 个字符,则新元素应仅包含最后 n 个字符,否则应保留元素不变。因此,如果 n = 2,对于此数组,输出应为 −const output = [68, 65, 67, 3, 78, 78, 35, 99];示例以下代码 −const arr = [56768, 5465, 5467, 3, 878, 878, 34435, 78799]; const splitLast = (arr, num) => { return arr.map(el => { if(String(el).length
699 次浏览
我们需要编写一个 JavaScript 函数,该函数接收一个这样的数字数组 −const arr = [3, 6, 34, 12, 6, 8, 8, 5, 6, 8];该函数应返回奇数索引处元素的总和与偶数索引处元素的总和之间的差值示例以下代码 −const arr = [3, 6, 34, 12, 6, 8, 8, 5, 6, 8]; const oddEvenDiff = arr => { let diff = 0; for(let i = 0; i < arr.length; i++){ if(i % 2 === 0){ diff += arr[i]; }else{ diff -= arr[i] }; }; return Math.abs(diff); }; console.log(oddEvenDiff(arr));输出这将在控制台中生成以下输出 −18
459 次浏览
我们需要编写一个 JavaScript 函数,该函数接受两个字符串和一个数字 n。该函数匹配两个字符串,即检查两个字符串是否包含相同的字符。如果两个字符串包含相同的字符(不管其顺序如何)或它们最多包含 n 个不同的字符,则该函数返回 true,否则该函数应返回 false。示例以下代码 −const str = 'some random text'; const str2 = 'some r@ndom text'; const deviationMatching = (first, second, num) => { let count = 0; for(let i = 0; i < first.length; i++){ ... 阅读更多
171 次浏览
我们需要编写一个JavaScript函数,该函数接收一个字符串和一个数字n作为两个参数(该数字应恰好整除字符串的长度),我们必须返回一个包含n个等长字符串的数组。例如 - 如果字符串是“how”,数字是2,我们的输出应该是 - ["h", "o", "w"];这里,每个子字符串恰好包含 -(数组长度/n)个字符,并且每个子字符串都是通过交替取字符串的相应首字母和尾字母形成的。示例如下代码所示 - const str = "how"; const num = 3; const segregate ... 阅读更多