3

目前我正在创建一个文件管理器。

我想要的是检查用户是否选择了视频文件。该文件可以是movf4vflvmp4swf

我想检查我的 varext是否是其中之一。

我所拥有的是:

if(ext == ('mov' || 'f4v' || 'flv' || 'mp4' || 'swf'))
{
    //Do something
}

有谁知道我怎么能让这个工作。我不想使用开关,因为我会遇到很多情况。

4

3 回答 3

8

您需要将变量与这些值中的每一个进行显式比较。

if( ext === 'mov' || ext === 'f4v' || ... ) { 
}

..但是,正则表达式来拯救,我们可以去

if( /mov|f4v|flv|mp4|swf/.test( ext ) ) { 
}
于 2012-10-05T09:23:24.533 回答
2

您需要将它们分开,如下所示:

if(ext === "mov" || ext === "f4v" || ext === "flv" || ext === "mp4" || ext === "swf")
{
    // do stuff
}

您还可以考虑将所有不同的扩展名放在一个数组中并检查该数组中是否存在 ext

于 2012-10-05T09:22:54.050 回答
2

不错的方法是这样的:

var exts = {
     "mov" : null,
     "f4v" : null,
     "flv" : null,
     "mp4" : null,
     "swf" : null,
}

if(ext in exts){
    // world peace
}
于 2012-10-05T09:24:22.260 回答