Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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_Surveyjs - Fatal编程技术网

Javascript 函数输出函数文本而不是预期输出

Javascript 函数输出函数文本而不是预期输出,javascript,surveyjs,Javascript,Surveyjs,我曾以几种不同的方式问过类似的问题,但这里有一个最简单的版本——我试图在函数发生时通过键名值列表递增。然而,当调用函数时,我得到的只是函数本身的文本。这里有一个片段- var knlist = { kn10:"2L1qvq6Tg6rMhEwNshr6dQ", kn11:"2N_Cl_Gl5fX8_TdLgHP3rQ", kn12:"2RbpjbhM3_EfzejfPgzwAw", kn13:"2

我曾以几种不同的方式问过类似的问题,但这里有一个最简单的版本——我试图在函数发生时通过键名值列表递增。然而,当调用函数时,我得到的只是函数本身的文本。这里有一个片段-

var knlist = {
    kn10:"2L1qvq6Tg6rMhEwNshr6dQ",
    kn11:"2N_Cl_Gl5fX8_TdLgHP3rQ",
    kn12:"2RbpjbhM3_EfzejfPgzwAw",
    kn13:"2rP8y_ub_alGrzAK_aZrEg",
    kn14:"2S8O9KBwxRlvtZX6kjyS0y",
    kn15:"2Ua5EnPVDwd7LGq6UbT2bQ",
    kn16:"3_17fNbyu2Yw8ozPx8BmkA",
    kn17:"3LB0GSXXVadBlCMhSth3IA",
    kn18:"48JvNwKSgvnWT8nqzWtE3Q",
    kn19:"4CP5JE_mlMMzjvDMMgXncg",
}

var count = 11

var knx = function knxer(){
    if (count === 11) {
    knx = "kn11";
    } else {
    knx = ("kn" + count);
    }};

var keyname = (knlist[knx]);

console.log (count)
console.log (knx)
console.log (keyname)
Console.log KNX只提供函数
knxer()
本身的文本,而不是随着计数的增加函数应该返回的预期值


一旦解决了这个问题,我将让另一个函数在不同的位置增加计数-这里有一次这样做,这样用户名就有一个值,可以在第一次尝试调查时输入,并反复发布每个完成项。

问题是您将
knix
分配给您的函数

var knlist={
kn10:“2L1qvq6Tg6rMhEwNshr6dQ”,
kn11:“2N_Cl_Gl5fX8_TdLgHP3rQ”,
kn12:“2RbpjbhM3_EfzejfPgzwAw”,
kn13:“2rP8y_ub_alGrzAK_aZrEg”,
kn14:“2S8O9KBwxRlvtZX6kjyS0y”,
kn15:“2Ua5EnPVDwd7LGq6UbT2bQ”,
kn16:“317fNbyU2YW8OZPX8BMKA”,
kn17:“3LB0GSXXVADBLCMSTH3IA”,
kn18:“48JvNwKSgvnWT8nqzWtE3Q”,
kn19:“4CP5JE_mlMMzjvDMMgXncg”,
}
变量计数=11
var-knx;
函数knxer(){
如果(计数=11){
knx=“kn11”;
}否则{
knx=((“kn”+count++);//每次调用时更新计数
}};
knxer();//叫它
var keyname=(knlist[knx]);
console.log(计数)
console.log(knx)

console.log(keyname)
您必须调用该函数

您只是在
console.log()
中提到函数名

这将调用函数并返回值
console.log(knx())


这将不会调用函数,而是返回函数体
console.log(knx)

非常感谢!关于让计数器作为底部的一个函数不断重复,从而使kner随着计数的增加而改变其输出,有什么建议吗?我是javascript新手,我认为这与异步性有关。再次检查答案我会在每次调用函数时通过增加计数器来更新它