CNode

uglify压缩能不能把枚举转换为值?

Rromboo发布于14 年前最后回复14 年前4 回复4402 浏览0 收藏

例如:

var browser = {
    ie: 1,
    firefox: 2
};

var current = browser.ie;
if(current == browser.ie) dosomething;

能否转换为:

var current = 1; 
if(current == 1) dosomething; 

用枚举的目的是开发时直观,但运行时就没必要了。希望这个例子不会让你误会,呵呵。 知道uglify是否可以通过参数或者其它方式实现这个,可以省不少空间,枚举加上namespace还是挺长的,经常是corp.project.enumName.value

查看回复

回复 (4)

I
imzshh#1·14 年前

应该是不行,js里没有枚举类型和常量,谁知道你这个值会不会被改掉呢?

R
romboo#2·14 年前
引用 imzshh应该是不行,js里没有枚举类型和常量,谁知道你这个值会不会被改掉呢?

改掉的时候肯定要重新压缩啊,你改代码又不在压缩后的代码中改。

R
romboo#3·14 年前

实在不行改源码,汗

参与回复
登录后即可参与回复。登录