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

左右子数组和的乘积 - JavaScript

AmitDiwan
更新于 2020年9月16日 09:23:49

108 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个长度为 N 的数字数组(N 应为偶数),并将数组分成两个子数组(左子数组和右子数组),每个子数组包含 N/2 个元素,然后对子数组求和,最后将两个子数组的和相乘。例如:如果输入数组为 - const arr = [1, 2, 3, 4] 那么输出应为 -(2+1) * (3+4) = 21 例如 以下代码 - const arr = [1, 2, 3, 4] const subArrayProduct = arr => {    const { length: l } = arr;    const creds = arr.reduce((acc, ... 阅读更多

数组中不同元素的和 - JavaScript

AmitDiwan
更新于 2020年9月16日 09:22:18

409 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个这样的数组,并计算数组中所有不同元素的和。例如:假设我们有一个这样的数字数组 - const arr = [1, 5, 2, 1, 2, 3, 4, 5, 7, 8, 7, 1];上述数组的输出将为 20。例如 以下代码 - const arr = [1, 5, 2, 1, 2, 3, 4, 5, 7, 8, 7, 1]; const distinctSum = arr => {    let res = 0;    for(let i = 0; i < arr.length; i++){       if(i === arr.lastIndexOf(arr[i])){          res += arr[i];       };       continue;    };    return res; }; console.log(distinctSum(arr));输出控制台中输出以下内容 - 30

检查数字是否属于斐波那契数列 - JavaScript

AmitDiwan
更新于 2020年9月16日 09:21:01

112 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个数字并检查它是否属于斐波那契数列。我们应该返回一个布尔值。以下是检查斐波那契数列的代码 - 例如 const num = 89; const isFib = query => {    if(query === 0 || query === 1){       return true;    }    let prev = 1;    let count = 2;    let temp = 0;    while(count

查找排序数组中只出现一次的元素 - JavaScript

AmitDiwan
更新于 2020年9月15日 12:01:35

474 次浏览

假设我们有一个这样的排序文字数组 - const arr = [2, 2, 3, 3, 3, 5, 5, 6, 7, 8, 9];我们需要编写一个 JavaScript 函数,该函数接收一个这样的数组并返回数组中只出现一次的第一个数字。如果数组中没有这样的数字,我们应该返回 false。对于这个数组,输出应该是 6 例如 以下代码 - const arr = [2, 2, 3, 3, 3, 5, 5, 6, 7, 8, 9]; const firstNonDuplicate = arr => {    let appeared = false;    for(let i ... 阅读更多

检查三个连续数字 - JavaScript

AmitDiwan
更新于 2020年9月15日 11:59:47

382 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个数字 n,我们需要检查是否存在三个连续的自然数(非十进制/浮点数)的和等于 n。如果存在这样的数字,我们的函数应该返回它们,否则应该返回 false。以下是代码 - 例如 const sum = 54; const threeConsecutiveSum = sum => {    if(sum < 6 || sum % 3 !== 0){       return false;    }    // 三个数字将是这种形式:    // x + x + 1 + x ... 阅读更多

在 JavaScript 中反向排序字符串

AmitDiwan
更新于 2020年9月15日 11:58:17

275 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个小写字符串并将其反向排序,即 b 应该在 a 之前,c 在 b 之前,依此类推。例如:如果输入字符串为 - const str = "hello";那么输出应该为 - const output = "ollhe";例如 以下代码 - const string = 'hello'; const sorter = (a, b) => {    const legend = [-1, 0, 1];    return legend[+(a < b)]; } const reverseSort = str => {    const strArr = str.split("");    return strArr    .sort(sorter)    .join(""); }; console.log(reverseSort(string));输出控制台中输出以下内容 - ollhe

角位数字差 - JavaScript

AmitDiwan
更新于 2020年9月15日 11:56:41

96 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个数字,从该数字的第一位和最后一位构造一个新数字,并返回原始数字与由此形成的数字之间的差。例如:如果输入是 34567 那么角位数字将是 - 37 并且输出将是 - 34530 例如 以下代码 - const num = 34567; const cornerDifference = num => {    let temp = Math.abs(num);    let corner = temp % 10;    if(temp < 100){       corner = temp;    }else{       while(temp >= 10){ ... 阅读更多

JavaScript - 构造一个新数组,其元素是输入数组中连续元素之间的差值

AmitDiwan
更新于 2020年9月15日 11:54:44

113 次浏览

假设我们有一个这样的数字数组 - const arr = [3, 5, 5, 23, 3, 5, 6, 43, 23, 7];我们需要编写一个函数,该函数接收一个这样的数组并构造另一个数组,其元素是输入数组中连续元素之间的差值。对于这个数组,输出将是 - const output = [-2, 0, -18, 20, -2, -1, -37, 20, 16];例如 以下代码 - const arr = [3, 5, 5, 23, 3, 5, 6, 43, 23, 7]; const consecutiveDifference = arr => {    const res = [];    for(let i = 0; ... 阅读更多

矩阵的对角线乘积 - JavaScript

AmitDiwan
更新于 2020年9月15日 11:52:25

2K+ 次浏览

假设我们有一个二维数组表示一个这样的方阵 - const arr = [    [1, 3, 4, 2],    [4, 5, 3, 5],    [5, 2, 6, 4],    [8, 2, 9, 3] ];我们需要编写一个函数,该函数接收这个数组并返回矩阵主对角线上元素的乘积。对于这个数组,主对角线上的元素为 - 1、5、6、3 因此输出应该是 - 90 例如 以下代码 - const arr = [    [1, 3, 4, 2],    [4, 5, 3, 5],   ... 阅读更多

字符串中重复两次的单词计数 - JavaScript

AmitDiwan
更新于 2020年9月15日 11:50:23

895 次浏览

我们需要编写一个 JavaScript 函数,该函数接收一个包含一些重复两次的单词的字符串,我们需要计算这些单词的数量。例如 - 如果输入字符串为 - const str = "car bus jeep car jeep bus motorbike truck";那么输出应该为 - 3 例如 以下代码 - const str = "car bus jeep car jeep bus motorbike truck"; const countRepetitive = str => {    const strArr = str.split(" ");    let count = 0;    for(let i = 0; i < strArr.length; i++){       if(i === strArr.lastIndexOf(strArr[i])){          continue; ... 阅读更多

广告