gpt4 book ai didi

javascript - 将函数数组作为 bool 数组返回

转载 作者:行者123 更新时间:2023-11-28 18:52:09 26 4
gpt4 key购买 nike

所以我正在更新一些旧项目,并且我正在尝试找到我想要完成的事情的来源或示例。

我有什么

// sample object of functions
var functions = {
required : function(value){
return value.length > 0;
},
isObject : function(value){
return typeof value == 'object';
}
};

上面是对象中函数的示例。我想知道的是可以执行以下操作:

伪代码

//user input
var funcs = [required(''), isObject({key : 'v'})];

// what the function I'm building will process, in a sense
functions[funcs[i]](//arguments from funcs[i]);

// what would remain after each function
funcs = [false, true] // with an end result of false

我不是 100% 确定这不能完成,我只是不确定这样的事情是如何发生的。让我们在这里讨论一些想法,看看我们能想到什么。

如果你们需要对我提出的任何问题进行澄清,请告诉我。提前感谢您的所有帮助!

澄清我想要实现的目标

函数的对象不是有限的,对于我正在编写的这个特定程序可以有任意数量的函数。它们将被预定义,因此用户输入不会成为问题。我需要能够确定在传递函数时调用哪个函数,并确保使用该函数传递的任何参数都存在并传递。因此,当我传递 required('') 时,我需要能够遍历我的函数对象并找到 functions['required'] 并传递空字符串值用它。就像这样functions['required']('')

其他问题

函数对象是私有(private)访问的,用户无法直接访问它。

最佳答案

这个怎么样。

var functions = {
required : function(value){
return value.length > 0;
},
isObject : function(value){
return typeof value == 'object';
}
};

// Because these values are user inputs, they should be strings,
// so I enclosed them in quotes.
var funcs = ["required('')", "isObject({key: 'v'})"];

funcs.map(function(e) {
return eval('functions.' + e);
});

运行它应该会为您提供对象中函数的返回值数组。

关于javascript - 将函数数组作为 bool 数组返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34323360/

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