Javascript将值更改为对象键(谷歌应用程序脚本)
嘿,我都不知所措了,真的不知道发生了什么,为什么?一般来说,我对javascript的了解不是很好,但我正在学习 我有一个由html文档填充的对象。在那个文档中,我有几个复选框。有些复选框很重要,它们需要一个值Javascript将值更改为对象键(谷歌应用程序脚本),javascript,google-apps-script,Javascript,Google Apps Script,嘿,我都不知所措了,真的不知道发生了什么,为什么?一般来说,我对javascript的了解不是很好,但我正在学习 我有一个由html文档填充的对象。在那个文档中,我有几个复选框。有些复选框很重要,它们需要一个值 * * Krijg alle verdeler data uit het formulier * @param form * @return data object */ function getS627Data(form) { var data = { Ingedi
*
* Krijg alle verdeler data uit het formulier
* @param form
* @return data object
*/
function getS627Data(form) {
var data = {
IngediendDoor: form.ingediendDoor,
Specialiteit: form.specialiteit,
Aan: form.aan,
Post: form.post,
Station: form.station,
Aanvraag: form.aanvraag,
Rubriek2ARMS: form.rubriek2ARMS,
Rubriek2AAndere: form.rubriek2AAndere,
AanvangDatum: form.aanvangDatum,
AanvangUur: form.aanvangUur,
EindDatum: form.eindDatum,
EindUur: form.eindUur,
MetOverdracht: form.metOverdracht,
Lvhw: form.lvhw,
NodigLvhw: form.nodigLvhw,
NodigLvhwBis: form.nodigLvhwBis,
NodigWl: form.nodigWl
};
return data;
}
所以这里我用键和值填充对象
/*
* Al de functionaliteit voor het verdeler formulier
* @param form
* @return succes of fail
*/
function writeVerdelerForm(form) {
try {
var data = this.getVerdelerData(form);
if(data.MetOverdracht == NULL) { data.MetOverdracht = 'FALSE'; }
if(data.Lvhw == NULL) { data.Lvhw = 'FALSE'; }
var sheet = SpreadsheetApp.openById('xxxxxx');
this.writeData(data, sheet);
// finalizeer alle sheet gegevens en creeër dan een pdf
SpreadsheetApp.flush();
this.createPDF(sheet, "Verdeler " + data.Lijn, true);
return this.success();
} catch (error) {
return error.toString();
}
}
在这里,我试着检查两个重要的键和值是否被填充。如果不是,我想给它们加上FALSE。然而,如果不在html代码中进行检查,它们仍然是未定义的
在JavaScript中,这些是特殊的值,应该是小写和不带引号的
null
false
true
原则上,相等性测试也应该始终使用===而不是==(如果需要,将尝试进行类型转换) 什么是
NULL
?这类似于null
?我带来的坏习惯,但如果更改为null,则不会修复问题,从而将调试器放入在这些语句之前编写>并使用浏览器调试器检查变量。查看它们的实际值。调试器不起作用(我相信google apps脚本不允许)。请尝试js值强制,其中undefined强制为false<代码>如果(!data.metoredracht){data.metoredracht=false;}如果(!data.Lvhw){data.Lvhw=false;}