关于回调函数与 数组的一些方法

关于回调函数

将回调函数 callback 作为参数传递给异步执行函数,当异步执行函数执行完之后再触发 callback 执行。

//定义异步执行函数,回调函数作为参数
function A(callback) {
    callback();  
    console.log('我是异步执行函数');      
}

//定义回调函数
function B(){
    setTimeout("console.log('我是回调函数')", 3000);     //模仿耗时操作  
}

A(B);

//我是异步执行函数
//我是回调函数

上述代码说明了:异步执行函数不用等待回调函数执行完,可以接着执行自己的代码(异步操作)。

  • 优点:简单、容易理解和部署

  • 缺点:不利于代码的阅读和维护,各个部分之间高度耦合,每个任务只能指定一个回调函数。


数组方法

  • Array.prototype.map()
    map() 方法返回一个新数组,该数组中的每个元素都是回调函数的结果。

    var numbers = [1, 4, 9];
    var roots = numbers.map(Math.sqrt);     //按顺序调用
    // roots的值为[1, 2, 3], numbers的值仍为[1, 4, 9]
  • Array.prototype.join()
    join() 方法将数组(或一个类数组对象)的所有元素连接到一个字符串中。

    array.join(separator)    separator 可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。

    var array = [1,2,3,4,5];
    var str = array.join("");
    // str = "12345",array = [1,2,3,4,5]

猜你喜欢

转载自blog.csdn.net/Milk_o3o/article/details/78824026