Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将javascript条件移动到外部文件?_Javascript_Node.js_Scripting - Fatal编程技术网

如何将javascript条件移动到外部文件?

如何将javascript条件移动到外部文件?,javascript,node.js,scripting,Javascript,Node.js,Scripting,使用脚本在一些软件之间传输数据,在这个脚本中,我有一个if条件来忽略一些不需要传输的特定字段。因此,我有一个条件,看起来像: if( object.field == "_Field1" || object.field == "_Field2" || object.field == "_Field3" || object.field == "_Field4" ... ) { ... } 然而,这些字段中有相当多的字段,而且可能会出现更多的字段,因此我想将这些字段

使用脚本在一些软件之间传输数据,在这个脚本中,我有一个if条件来忽略一些不需要传输的特定字段。因此,我有一个条件,看起来像:

if(
    object.field == "_Field1" ||
    object.field == "_Field2" ||
    object.field == "_Field3" ||
    object.field == "_Field4" 
...
) { ... }

然而,这些字段中有相当多的字段,而且可能会出现更多的字段,因此我想将这些字段移动到外部(文本或js?)文件,以便于维护和可读性,如何在不移动if的情况下实现这一点?理想情况下,我希望能够有另一个脚本,在需要添加新字段时写入该文件,以便该文件仅用于比较。

您只需创建一个执行此计算并返回结果的函数即可。大概是这样的:

function isObjectOneOfSpecificFieldSubsets(object) {
    return (
        object.field == "_Field1" ||
        object.field == "_Field2" ||
        object.field == "_Field3" ||
        object.field == "_Field4" 
    )
}
那么您上面的代码将变成:

if(isObjectOneOfSpecificFieldSubsets(object)) {
    ...
}

您可以在数组中添加要忽略的字段,并在实际发送对象之前将其删除:

const ignoredFields=[“U Field2”、“U Field2”、“U Field3”、“U Field4”]
//或者您可以从文件中读取它们
常量mustIgnore=({field})=>
返回ignoredFields.includes(字段)

现在您可以动态使用
mustIgnore
,而无需更改或添加if语句

我不知道是否理解您的问题,但您可以:

  • 有一个仅包含要检查的字段列表的文件:
const字段=[
“_Field1”,
“_Field2”,
...
]
  • 有一个带有util的文件:
const doFieldsCheckCondition=(字段)=>{
...
for(让tmp_字段为字段){
...
}
}
  • 然后在原始脚本中使用此函数:
if(doFieldsCheckCondition(field)){…}

创建一个类,然后将条件作为参数传递给函数。然后,您可以在“外部”文件中创建一个实例并执行该函数