理解JS中的声明式与命令式?

理解JS中的声明式与命令式?

声明式编程

定义: 告诉“机器”你想要的是什么(what),让机器想出如何去做(how)。

命令式编程

定义: 命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。

常见的代码再来理解一次

// 命令式

const numbers = [1,2,3,4,5]

const doubled = []

for(var i = 0; i < numbers.length; i++) {

  var newNumber = numbers[i] * 2

  doubled.push (newNumber)

}

console.log (doubled) //=> [2,4,6,8,10]

// 声明式

const numbers = [1,2,3,4,5]

const doubled = numbers.map (function (n) {

  return n * 2

})

console.log (doubled) //=> [2,4,6,8,10]

优缺点

声明式减少了可变量(Immutable Variable)的声明,程序更为安全

相比命令式编程,少了非常多的状态变量的声明与维护

声明式代码更为简洁,好的命名代码可读性更强

总结

命令式关注过程

声明式关注结果

你可能感兴趣的:(理解JS中的声明式与命令式?)