javascript - 按键搜索时字典返回未定义
问题描述
我目前正在制作一个小型测试网站,并且我有一个函数可以根据输入将图像添加到 innerHTML:
function montreImg(nomImage){
var output = document.getElementById("fileContent"/*Placeholder*/);
var images = {
ranch : "/ressources/bungalow/ranch.jpg",
bungalowstyle : "/ressources/bungalow/bungalow style.jpg",
tuscan : "/ressources/bungalow/tuscan.jpg",
farmhouse : "/ressources/bungalow/farmhouse.jpg",
traditional1 : "/ressources/bungalow/traditional1.jpg",
cabin : "/ressources/2etages/cabin.jpg",
craftsman : "/ressources/2etages/craftsman.jpg",
modern : "/ressources/2etages/modern.jpg",
southern : "/ressources/2etages/southern.jpg",
traditional2 : "/ressources/2etages/traditional2.jpg"
};
console.log(images.nomImage);
var img = '<img src="' + images[nomImage] + '">';
output.innerHTML += img;
}
每当我通过键搜索对象时,它都会给我未定义(在控制台日志中)并且它会说找不到图像,因为它正在搜索未定义。我最初将键作为字符串并搜索:
images[nomImage]
但这也返回未定义。我验证了,输入是字符串类型的。我已经搜索了几个小时,但找不到与我有类似问题的人。我没有使用 AJAX 或任何其他框架,它是纯 JS 和本地网站。
我似乎找不到我的代码有什么问题,但我对 JS 比较陌生,所以我可能遗漏了一些明显的东西。
提前致谢。
解决方案
我刚刚通过复制和粘贴控制台日志发现,我的输入文本前面有一个额外的空间。这让我发疯了。很抱歉发布,但我会留下它,以防有人遇到和我一样的事情。
这是输入的内容:
"tuscan "
但它应该是:
"tuscan"
直到我复制并粘贴到日志之外才注意到。