gpt4 book ai didi

javascript - 缩小的javascript代码有什么优点?

转载 作者:数据小太阳 更新时间:2023-10-29 05:42:40 26 4
gpt4 key购买 nike

我正在阅读 BemTv 的代码.然后我看到了如下奇怪的 Javascript 代码。

//n = {} , r = [5,1]
! function e(t, n, r) {
console.log(t)
function i(s, a) {
if (!n[s]) {
if (!t[s]) {
var c = "function" == typeof require && require;
console.log(require);
if (!a && c) return c(s, !0);
if (o) return o(s, !0);
throw new Error("Cannot find module '" + s + "'")
}
var u = n[s] = {
exports: {}
};
t[s][0].call(u.exports, function(e) {
var n = t[s][1][e];
return i(n ? n : e)
}, u, u.exports, e, t, n, r)
}
return n[s].exports
}
for (var o = "function" == typeof require && require, s = 0; s < r.length; s++) i(r[s]);
return i
}({
1: [function(e, t) {
"use strict";
t.exports = e("./src/main")
}, {
"./src/main": 46
}],
2: [function() {}, {}],
3: [function(e, t) {
...........

来源:http://cdn.clappr.io/bemtv/latest/p2phls.min.js

我的问题是:

  1. 代码行中的“数字”是什么意思?似乎结果的索引和按索引返回函数对象。这样对吗?

  2. 为什么作者要这样写代码?这种编码约定有什么优点吗?

最佳答案

正如@Jacob 所说。从客户端的 Angular 来看,精简的 JavaScript 意味着下载的字节数更少。

通常,开发人员会在完整的注释版本中实现它,然后使用像 UglifyJs 这样的工具生成缩小版本。

通常会看到这些文件的两个版本:

  • myLib.js(原始版本,旨在包含在开发模式中以进行调试)
  • myLib.min.js(精简版,用于生产)

此外,随着 Node 的兴起,将代码库实现为单独的、可读的模块然后使用像 Webpack 这样的捆绑工具变得非常普遍。和 Browserify生成一个包,它通常不仅包含您的缩小代码,还包含单个 bundle.js 中的大部分依赖项。这非常简单。

关于javascript - 缩小的javascript代码有什么优点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31690045/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com