replace() method of form submitted data returns "TypeError: Cannot call method 'replace' of undefined"
replace() method of form submitted data returns "TypeError: Cannot call method 'replace' of undefined"
所以我试图用“-”替换从我的 Google 表单提交的任何“-”,以便能够对其进行数学处理(我在排除的代码中进一步执行 parseInt())我的电子表格。我在这里尝试这样做的方式可能很笨拙,但我有点希望它能工作,但我不明白为什么它不会。
function myNotification(e) {
var i;
var temp = [];
var ent = [];
var eventInput = e;
var vArray = e.values; // just for the sake of it
for(i = 0; i < 150; i++){
ent[i] = e.values[i]
temp[i] = ent[i].replace("−","-"); //TypeError
}
我真的很感激我能得到的任何可能的帮助,因为我已经尝试解决这个问题一段时间了,但我对 js(或一般编码)的有限理解真的很难。
编辑:我通常不在代码中包含 .toString() ,但这也给了我与 replace()
相同的 TypeError
EDIT2:var ja = e.values[2].replace("−","-");
给了我“-1”而不是正常的“−1”,这正是我想要的,但我不想写下所有 150 个潜在的转换
EDIT3(5):这:Google Script not properly accepting event input 似乎非常相关,但我尝试添加他最终做出的声明来解决问题,但它似乎没有做任何事情为了我。代码已更新。
只要我制作了两个变量,这就有效:
var vArray = e.values;
var arrayLength = e.values.length;
EDIT4:按照 for 循环中 e.values.length 的建议修复了该问题。
更新代码:
var i;
var temp = [];
var ent = [];
var eventInput = e;
var vArray = e.values;
for(i = 0; i < e.values.length; i++){
ent[i] = e.values[i];
temp[i] = ent[i].replace("−","-");
}
限制你的for循环直到数组的长度。
function myNotification(e) {
for(i = 0; i < e.values.length; i++){
ent[i] = e.values[i].toString();
temp[i] = ent[i].replace("−","-");
}
}
所以我试图用“-”替换从我的 Google 表单提交的任何“-”,以便能够对其进行数学处理(我在排除的代码中进一步执行 parseInt())我的电子表格。我在这里尝试这样做的方式可能很笨拙,但我有点希望它能工作,但我不明白为什么它不会。
function myNotification(e) {
var i;
var temp = [];
var ent = [];
var eventInput = e;
var vArray = e.values; // just for the sake of it
for(i = 0; i < 150; i++){
ent[i] = e.values[i]
temp[i] = ent[i].replace("−","-"); //TypeError
}
我真的很感激我能得到的任何可能的帮助,因为我已经尝试解决这个问题一段时间了,但我对 js(或一般编码)的有限理解真的很难。
编辑:我通常不在代码中包含 .toString() ,但这也给了我与 replace()
相同的 TypeErrorEDIT2:var ja = e.values[2].replace("−","-");
给了我“-1”而不是正常的“−1”,这正是我想要的,但我不想写下所有 150 个潜在的转换
EDIT3(5):这:Google Script not properly accepting event input 似乎非常相关,但我尝试添加他最终做出的声明来解决问题,但它似乎没有做任何事情为了我。代码已更新。
只要我制作了两个变量,这就有效:
var vArray = e.values;
var arrayLength = e.values.length;
EDIT4:按照 for 循环中 e.values.length 的建议修复了该问题。 更新代码:
var i;
var temp = [];
var ent = [];
var eventInput = e;
var vArray = e.values;
for(i = 0; i < e.values.length; i++){
ent[i] = e.values[i];
temp[i] = ent[i].replace("−","-");
}
限制你的for循环直到数组的长度。
function myNotification(e) {
for(i = 0; i < e.values.length; i++){
ent[i] = e.values[i].toString();
temp[i] = ent[i].replace("−","-");
}
}