在 Vue.js 中实用任意 JavaScript 第三方库

Lodash, Moment, Axios, Async … 等等, 这些非常有用的 JavaScript 库。你可能会在你的很多 Vue.js 应用中使用它们。

但随着项目的不断增长,您通常会将代码拆分成多个组件文件或模块文件。您也可能希望在不同的环境中能够运行你的 APP ,包括服务器渲染。

除非你已经找到一个简单而强大的方法来将这些 JavaScript 库包含到你的组件和模块文件中,否则这将是一件非常麻烦的事情! 继续阅读

回归基础:JavaScript 中的数据格式转换一例

常见问题

打个比方,你有一组数据,需要根据拼音首字母字母索引显示在页面上,如图:

这种索引性的展示已经随处可见。对于我们前端开发来说这种展示最喜欢的数据格式可能是这样的: 继续阅读

2017年最佳JavaScript框架,库和工具

JavaScript框架,库和工具似乎比他们的开发人员多出很多。截至2017年5月,在 GitHub 上快速搜索 JavaScript 项目显示已经超过110万个。npmjs.org 有 50 万个可用的软件包,每月下载量近100亿次。

2017.05.29:该文章已更新,以反映 JavaScript 生态的当前状态。

本文将努力解释最流行的客户端 JavaScript 框架、库和工具之间的基本内容和差异。他们对你来说是否是 “最好的” 选择是另一个问题。选择一些东西,坚持一段时间。你需要知道的是:你最喜欢的选项终将被“更好”的东西取代,无论你选择什么! 继续阅读

Lodash:10个JavaScript工具函数-用Lodash减少LOC,并改善你的应用程序逻辑清晰

开发JavaScript应用程序的时候,我们经常需要自己编写实用方法等作为我们的实用(工具函数)模块。那么,什么是实用模块?

实用类就是定义一组经常执行的方法,重复使用功能的类。 – 维基百科

从处理字符串和对象到集合迭代器,总是会需要实用功能来完成工作的情况。

即使是采用主流的ES6,我敢说,JavaScript开发人员仍然无法获得像Objective-C或Ruby那样多的语法糖。 因此,在JavaScript应用中,仍然普遍需要我们编写大量重复的自定义工具函数。

然而,最近我很喜欢一个JavaScript库,它提供很多干净,高性能的实用方法 – Lodash

YHvwPgwojjsFa

如果jQuery是DOM操作的瑞士军刀,那么Lodash对于Javascript来说相当于是蝙蝠侠的实用腰带。蝙蝠侠总是用他信赖的腰带上的小工具摆脱棘手的情况。

以下是我在JavaScript应用已经停止重写的10个实用方法,当然对于不同的工作,你很可能也会需要其他的工具函数, 本文仅作为一个入门Lodash的引子。 继续阅读

lodash 中文文档

一个 JavaScript 的实用工具库, 表现一致性, 模块化, 高性能, 以及 可扩展。

lodash一开始是Underscore.js库的一个fork,因为和其他(Underscore.js的)贡献者意见相左。John-David Dalton的最初目标,是提供更多“一致的跨浏览器行为……,并改善性能”。之后,该项目在现有成功的基础之上取得了更大的成果…

与其前任Underscore一样,lodash的名字也是源于所有函数前面的那个字符。就像jQuery在全部函数前加全局的$一样,lodash使用全局的_来提供对工具的快速访问。例如,要对数组的所有元素执行某个行为,我们可以:

_.each([1, 2], function(n) { console.log(n); });

lodash 中文文档 v4.16.1 : http://www.css88.com/doc/lodash/ (旧版本可以进入后选择版本查看)

===============以下2016年9月24日增加==============

  • 目前最新版本为v4.16.1
  • 文档界面上根据官网提供的样式生产,更加美观,方便。
  • REPL运行代码,直接查看运行结果,更加直观,帮助理解。

你可能不再需要Underscore

过去几年像 Underscore 和 lodash 等库进入许多JavaScript程序员的工具函数中。虽然这些工具库可以使你的代码写起来更容易,但是他们不一定使代码更简单或更容易理解。

各种工具函数库层出不穷,每个工具库的写法也各有不同,这样给阅读和维护你代码的人也带来了一定的困难,以为他必须了解你使用的这个这个工具库的函数做了什么事情。

JavaScript不断发展,新ES2015和ES2016版本(以前分别称为ES6和ES7)包了一堆新功能特性,并很容易使用它们。这些特性使得工具库以前的一些基本功能已经过时。

所以你可能不再需要Underscore。

例子:

这些例子说明,ES5.1,ES2015和ES2016做这些事情很容易,你可能不需要一个实用程序库了。ES5已经得到了所有现代浏览器和node.js的支持,要是想支持传统浏览器(比如IE8),还需要像es-shim这样的帮助脚本。

Arrays(数组)

Iterate(迭代)

  • Underscore
    _.each(array, iteratee)
  • ES5.1
    array.forEach(iteratee)

Map

  • Underscore
    _.map(array, iteratee)
  • ES5.1
    array.map(iteratee)

继续阅读