JavaScriptl练习之数组,对象

1.山上有一口缸可以装50升水,现在有15升水。老和尚叫小和尚下山挑水,每次可以挑5升。问:小和尚要挑几次水才可以把水缸挑满?通过编程解决这个问题。
2.定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程。
3.通过循环按行顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。
4. 数组的冒泡排序
5. 数组的选择排序
6. 编写函数map(arr) 把数组中的每一位数字都增加30%,并返回一个新数组
7. 编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型
8. 编写函数norepeat(arr) 将数组的重复元素去掉,并返回新的数组
9.有一个从小到大排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
9. 创建一个对象,该对象存储一个学生的信息,该对象包含学号、身份证、年龄、性别、所学专业等属性信息,同时该对象包含一个自我介绍的方法,用来输出该对象的所有信息

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>强化练习1</title>
</head>

<body>
    <script>
        /* 
        山上有一口缸可以装50升水,现在有15升水。老和尚叫小和尚下山挑水,每次可以挑5升。问:小和尚要挑几次水才可以把水缸挑满?通过编程解决这个问题。
       */
        var arr = [15];
        var sum = 15;
        for (var i = 0; sum < 50; i++) {
            arr.push(5);
            sum += arr[i + 1];
        }
        document.write("共需要:" + i + "次</br>");

        /* 定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程。 */
        var arr1 = [0];
        for (var i = 1; i <= 30; i++) {
            arr1[i - 1] = i * 2;
            document.write(arr1[i - 1] + "\t");
        }
        document.write("</br>");

        var sum = 0;
        var count = [];
        for (var i = 1; i <= 30; i++) {
            sum += arr1[i - 1];
            if (i % 5 == 0) {
                count.push(sum / 5);
                sum = 0;
                document.write(count[i / 5 - 1] + "\t");
            }
        }
        document.write("</br>");
        document.write(" 通过循环按行顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。试编程");
        document.write("</br>");
        /*
             通过循环按行顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。试编程。
          */
        var arr2 = [];
        for (var i = 0, count = 0; i < 5; i++) {
            var arr = [];
            for (var j = 0; j < 5; j++) {
                count++;
                arr.push(count);
                if (j <= i) {
                    document.write(count + "\t");
                }
            }
            arr2.push(arr);
            document.write("</br>");
        }
        console.log(arr2);

        /* 
            数组的冒泡排序
        */
        var arr = [1, 43, 23, 23, 12, 35];
        document.write("冒泡排序前:");
        for (var i in arr) {
            document.write(arr[i] + "\t");
        }
        document.write("</br>");
        for (var i = 0; i < arr.length; i++) {
            for (var m = 0; m < arr.length - 1 - i; m++) {
                if (arr[m] > arr[m + 1]) {
                    arr[m] = arr[m] ^ arr[m + 1];
                    arr[m + 1] = arr[m] ^ arr[m + 1];
                    arr[m] = arr[m] ^ arr[m + 1];
                }
            }
        }
        document.write("冒泡排序后:");
        for (var i in arr) {
            document.write(arr[i] + "\t");
        }
        document.write("</br>");
        /* 
            数组的选择排序
        */
        var arr3 = [23, 123, 12, 31, 23, 22, 45];
        document.write("选择排序前:");
        for (var i in arr3) {
            document.write(arr3[i] + "\t");
        }
        document.write("</br>");
        for (var i = 0; i < arr3.length - 1; i++) {
            var min = i;
            for (var m = i + 1; m < arr3.length; m++) {
                if (arr3[min] > arr3[m]) {
                    min = m;
                }
            }
            if (min !== i) {
                arr3[min] = arr3[min] ^ arr3[i];
                arr3[i] = arr3[min] ^ arr3[i];
                arr3[min] = arr3[min] ^ arr3[i];
            }
        }
        document.write("选择排序后:");
        for (var i in arr3) {
            document.write(arr3[i] + "\t");
        }
        document.write("</br>");

        /* 
        编写函数map(arr) 把数组中的每一位数字都增加30%,并返回一个新数组
        */
        document.write("  编写函数map(arr) 把数组中的每一位数字都增加30%,并返回一个新数组");
        document.write("</br>");
        var arr = [10, 100, 1000];
        for (i in arr) {
            arr[i] *= 1.3;
        }
        for (value of arr) {
            document.write(value + "\t");
        }
        document.write("</br>");
        /*
        编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型
        */
        document.write("  编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型");
        document.write("</br>");
        var arr = [12, 70, 60, 2312, 3, 12, 12];
        function has(arr, b) {
            if (arr.indexOf(60)) {
                return true;
            }
            else { return false; };
        }
        document.write(has(arr, 60));

        /* 
            编写函数norepeat(arr) 将数组的重复元素去掉,并返回新的数组
        */
        document.write("编写函数norepeat(arr) 将数组的重复元素去掉,并返回新的数组");
        document.write("</br>");
        var arr = [1, 1, 2, 2, 3, 4, 5, 6, 4, 4, 2, 1, 3, 5, 7, 8, 56];
        function norepeat(arr) {
            for (var i = 0; i < arr.length; i++) {
                for (var j = i + 1; j < arr.length; j++) {
                    if (arr[i] == arr[j]) {
                        arr.splice(j, 1);
                        j--;
                    }
                }
            }
            return arr;
        }
        document.write(norepeat(arr));
        console.log(norepeat(arr));

        /* 
            有一个从小到大排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
        */
        document.write("有一个从小到大排好序的数组。现输入一个数,要求按原来的规律将它插入数组中");
        document.write("</br>");
        var arr = [1, 2, 3, 4, 5, 67, 87, 99];
        for (value of arr) {
            document.write(value + "\t");
        }
        document.write("</br>");
        arr.push(23);
        arr.sort(function (a, b) {
            return a - b;
        })
        for (value of arr) {
            document.write(value + "\t");
        }
        document.write("</br>");
        /* 
            创建一个对象,该对象存储一个学生的信息,该对象包含学号、身份证、年龄、性别、所学专业等属性信息,同时该对象包含一个自我介绍的方法,用来输出该对象的所有信息

        */
        document.write("创建一个对象,该对象存储一个学生的信息");
        document.write("</br>");
        function student(name, age, ID, sex) {
            var stu = new Object();
            stu.name = name;
            stu.age = age;
            stu.ID = ID;
            stu.sex = sex;
            stu.say = function () {
                return "名字:" + this.name + "\t年龄:" + this.age + "\t身份证号码:" + this.ID + "\t性别:" + this.sex;
            }
            return stu;
        }
        var stu1 = student("张三", 18, 123456, "man");
        console.log(stu1);
        document.write(stu1.say());
        document.write("</br>");
    </script>
</body>

</html>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值