ES6函数部分和数组部分的小练习

基于前两篇文章,让ai给我们出以下十道练习题:

  1. 编写一个函数,接收一个字符串作为参数,返回该字符串的反转版本。
  2. 创建一个数组,使用map方法来将每个元素乘以2,并返回新数组。
  3. 定义一个对象,包含三个属性:name, agecity,然后编写一个函数,接收这个对象作为参数,打印出对象的name属性。
  4. 使用reduce方法来计算一个数组中所有数值的总和。
  5. 写一个匿名函数,接收任意数量的参数,并返回它们的平均值。
  6. 创建一个Set,包含数字1到10,然后将其转换为数组。
  7. 使用filter方法找出数组中所有的偶数,并返回一个新的数组。
  8. 写一个箭头函数,接收一个数组,返回数组中最大值和最小值的差。
  9. 创建一个类Person,拥有属性nameage,并且有一个方法introduce,用于打印自我介绍。
  10. 使用concat方法合并三个数组为一个。

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
<script>
// 编写一个函数,接收一个字符串作为参数,返回该字符串的反转版本。
function FirstQuestion(A) {
    return A.split('').reverse().join('');
    // 使用 split() 方法将字符串分割成字符数组,
    // 然后使用 reverse() 方法反转这个数组,最后使用 join('') 方法将反转后的字符数组重新组合成一个字符串。
}
console.log(FirstQuestion('Hello'));
// 创建一个数组,使用map方法来将每个元素乘以2,并返回新数组。
let SecondQuestion = [1,2,3,5];
function map(B) {
    let result = [];
    for(let i of B) {
        result.push(i*2);
    }
    return result;
}
let result = map(SecondQuestion);
console.log(result);
// 定义一个对象,包含三个属性:name, age和city,然后编写一个函数,接收这个对象作为参数,打印出对象的name属性。o
var ThirdQuestion = {
    name : "xiaoming",
    age : 19,
    city : "guangzhou"
};
console.log(ThirdQuestion.name);

// 使用reduce方法来计算一个数组中所有数值的总和。
// 使用reduce方法来计算一个数组中所有数值的总和。
const FourthQuestion = [1, 2, 2, 3, 4, 5, 4];

const sum = FourthQuestion.reduce((acc, value) => acc + value, 0);

console.log(sum); // 输出: 17

// 写一个匿名函数,接收任意数量的参数,并返回它们的平均值。
// ...args 是一个rest参数,它可以捕获调用函数时传入的所有剩余参数,并将其作为一个数组args。
let FifthQuestion = function(...rest) {
    let sum =  rest.reduce((sum, value) => sum + value, 0)
    return sum/rest.length;
}
console.log(FifthQuestion(5,5,67,7));

// 创建一个Set,包含数字1到10,然后将其转换为数组。
const numSet = new Set([1,2,3,4,5,6,7,8,9,10]);
const numArray = Array.from(numSet);
console.log(numArray);

// 使用filter方法找出数组中所有的偶数,并返回一个新的数组。
let SeventhQuestion = [5,68,6,13,5,9];
console.log(SeventhQuestion.filter(num => num%2 === 0));

// 写一个箭头函数,接收一个数组,返回数组中最大值和最小值的差。
let EighthQuestion = [3,5,89,42,3];
function BigSmall(D) {
    D.sort();
    return D[D.length-1] - D[0];
}
console.log(BigSmall(EighthQuestion));

// 创建一个类Person,拥有属性name和age,并且有一个方法introduce,用于打印自我介绍。
class Person {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }

    introduce() {
        console.log(`My name is ${this.name}, my age is ${this.age}.`);
        // 注意这里是反引号而不是单引号
    }
}
const one = new Person("xiaoming", 18);
one.introduce();

// 使用concat方法合并三个数组为一个。
let array1 = [1,2,3];
let array2 = [3,5,6];
let array3 = [8,9,7];
let array = array1.concat(array2);
let array4 = array.concat(array3);
console.log(array4);

</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值