JS项目小Tipes总结

一、定义在函数内部的方法

问题:

无法调用函数内部的方法

解决:

'use strict';

var xiaoming = {
    name: '小明',
    birth: 1990,
    age: function () {
        var that = this; // 在方法内部一开始就捕获this
        function getAgeFromBirth() {
            var y = new Date().getFullYear();
            return y - that.birth; // 用that而不是this
        }
        return getAgeFromBirth();
    }
};

xiaoming.age(); // 25

var that = this;,你就可以放心地在方法内部定义其他函数,而不是把所有语句都堆到一个方法中。

二、demo01.js:1 Uncaught ReferenceError: math is not defined

问题:

'use strict';
function add(x, y, f) {
    return f(x) + f(y);
}
var x = add(-5,6,math.abs());
alert(x);

上述代码报错math is not defined

解决:

1、调用 Math 函数不应该使用 math 
2、f 是一个函数,所以应该为
var x = add(-5,6,Math.abs);

三、map/reduce的用法与介绍

廖雪峰官网

利用map()计算x平方

'use strict';

function pow(x) {
    
    
    return x * x;
}
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var results = arr.map(pow); // [1, 4, 9, 16, 25, 36, 49, 64, 81]
console.log(results);

利用reduce()求和:

var arr = [1, 3, 5, 7, 9];
arr.reduce(function (x, y) {
    
    
    return x + y;
}); // 25

Guess you like

Origin blog.csdn.net/qq_53810245/article/details/120233393