Mr.Xu:基础基础基础

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/vivian_1122/article/details/89080171

1.script为什么放在body下边

加载顺序是从上到下的,js要操作dom元素,所以要等dom先加载完后再去操作

2.dom的获取(h5)

//根据id选择(一般id不会重复使用)
document.querySelector('#dv');

//由于class 是用来批量操作的,所以对于批量的东西批量去选中,所以根据class来选择元素用这种方式
document.querySelectorAll('.dv');

3.绑定事件

//当script标签放在body标签前面的时候,获取元素,js事件必须放在加载事件window.onload中
window.onload = function(){
    var a = document.querySelectorAll('.dv');
    a.forEach(function(element){
        element.onclick = function(){
            console.log(123)
           }
        })
    }

//当script标签放在body下面的时候,绑定事件可以不用加window.onload
var a = document.querySelector('#dv');
a.onclick = function(){
    console.log(111)
}



4.写一个方法,返回一个数组,数组中给每个人的年龄都+1

var arr = [{
        name: 'AA',
        age: 18,
        height: '158'
    }, {
        name: 'BB',
        age: 19,
        height: '158'
    }, {
        name: 'CC',
        age: 20,
        height: '159'
    }, {
        name: 'DD',
        age: 38,
        height: '178'
    }, {
        name: 'EE',
        age: 28,
        height: '168'
    }]

    function res(arr) {
        var newArr = [];
        arr.forEach(item => {
            var obj = {}
            obj.name = item.name;
            obj.age = item.age + 1;
            obj.height = item.height;
            newArr.push(obj)
        })
        return newArr;
    }
    console.log(res(arr));
    console.log(arr);

5.写一个方法传个数组进去,如果长度比6大就去掉一个,如果比6小就添加一个,补够6个

        function res(arr) {
            if (arr.length < 6) {
                arr.push(1);
                res(arr);
            } else if (arr.length > 6) {
                arr.pop();
                res(arr);
            } else if (arr.length == 6) {
                return arr;
            }
        }
        var arr = [2, 9, 0, 0, 9, 8, 7, 0];
        res(arr);
        console.log(arr);

6.把年龄相同的放到一个数组里

var arr = [{
            age: 12
        }, {
            age: 22
        }, {
            age: 29
        }, {
            age: 22
        }, {
            age: 12
        }, {
            age: 39
        }, {
            age: 12
        }];

        function res(arr) {
            var o = {};
            for (var i = 0; i < arr.length; i++) {
                var item = arr[i];
                if (o[item.age]) {
                    o[item.age].push(item);
                } else {
                    o[item.age] = [item];
                }
            }
            console.log(o);
        }
        res(arr);

7.合并两个数组对象中id一样的对象

var arr1 = [{
        name: 'vivi',
        id: 1
    }, {
        name: 'bibi',
        id: 2
    }, {
        name: 'titi',
        id: 3
    }]
    var arr2 = [{
        id: 1,
        age: 18

    }, {
        id: 2,
        age: 19
    }, {
        id: 3,
        age: 20
    }]
    var newArr = [];

    function res(arr1, arr2) {
        for (var i = 0; i < arr1.length; i++) {
            for (var j = 0; j < arr2.length; j++) {
                if (arr1[i].id === arr2[j].id) {
                    var obj = {};
                    obj.name = arr1[i].name
                    obj.age = arr2[i].age
                    obj.id = arr1[i].id
                    newArr.push(obj)
                }
            }
        }
        console.log(newArr)
    }
    res(arr1, arr2)

8.判断一个数是否是质数

    function isZhishu(num) {
        if (num != 1 && num % 2 === 0) {
            console.log('质数')
        } else {
            console.log('不是质数')
        }
    }
    isZhishu(9)

9.求斐波那契数列Fibonacci中的第n个数是多少?1 1 2 3 5 8 13 21...

 function getFib(n) {
        var n1 = 1;
        var n2 = 1;
        var n3;
        for (var i = 3; i <= n; i++) {
            n3 = n1 + n2;
            n1 = n2;
            n2 = n3;
        }
        return n3;
    }
    var r = getFib(6);
    console.log(r);

10.求数组中的最大值和最小值,以及所在的位置

 var arr = [1, 2, 3, 4, 0, 9];
    var max = arr[0];
    var min = arr[0];
    var maxIndex = 0;
    var minIndex = 0;
    arr.forEach((item, index) => {
        if (max < item) {
            max = item;
            maxIndex = index;
        }
        if (min > item) {
            min = item;
            minIndex = index
        }
    })
    console.log(max, maxIndex);
    console.log(min, minIndex);

猜你喜欢

转载自blog.csdn.net/vivian_1122/article/details/89080171