疑问?

当你搜索 算法书籍的时候 你将发现 所有的算法基本都是基于java或者c的
几乎没有使用javaScript来编写算法的
这是为什么? 我们来了解一下算法和数据结构

什么是算法

数据结构指的是“一组数据的存储结构”,算法指的是“操作数据的一组方法”。
数据结构是为算法服务的,算法是要作用再特定的数据结构上的。

javaScript几乎无数据结构

那我们认真思考一下,前端javascript有哪些数据结构?
就4个:array、object、map、set。
后两个还是16年才加上去的

拿图说话

再看看大话数据结构里作者怎么说?
前端需要算法?_前端开发
看看知乎用户怎么讨论?
前端需要算法?_前端开发_02
前端需要算法?_封装_03

那到底要不要学

唯一能用到算法的地方,可能就是排序、去重、或者vdom的diff算法了(这个也是内部封装也不用我们也接触不到)
综上,算法对前端开发确实不友好。我们平时也用不到。
追根溯源,js是一门动态弱语言,
也就是说你想优化内存、提高效率,可是js连怎么再内存中存储的都不清粗(暴漏)你怎么去做算法?

结语是:纯前端可以学算法,但是不要深入,也没必要深入。