我有一个方法,可以将文本和图像文件作为参数传递给另一个函数。传递了文本,但是图像文件始终未定义。我想念什么?
function anotherFunc(text, imageFile){
if (typeof imageFile == 'undefined'){
console.log("image undefined")
} else {
console.log("Got image")
}
}
function theCaller(){
var text ="hello"
var imageFile = 'img.png'
anotherFunc(text, imageFile)
}
这总是输出图像undefined
,尽管我将图像放在源代码的同一目录中。我也尝试过var imageFile = './img.png'
,但这也无济于事。
答案 0 :(得分:0)
如果要测试imageFile是否未定义,则应执行以下操作:
if (typeof imageFile == 'undefined'){
console.log("image undefined")
} else {
console.log("Got image")
}
答案 1 :(得分:0)
您仅在验证字符串不是“未定义”。除了通过说if (imageFile)
或更明确地if (typeof imageFile === 'undefined')
来更改代码以正确验证其是否未定义之外,您还需要实际提供图像,而不仅仅是文本。
我建议您做这样的事情:
const fs = require('fs');
const path = require('path');
let fileName = 'someName.png';
let fullPath = path.join(__dirname, 'some', 'path', fileName);
if (fs.existsSync(fullPath)) {
let file = fs.readFileSync(fullPath);
// do something with the file
}