如何在Javascript中打印出一行

7

我想测试这个函数getFileExtension(input.files[0].name) 的返回值(我在那一行写了注释)我的问题是如何在javascript中打印出该值?谢谢!

<script>
    function getFileExtension(filename) {
        var ext=filename.split('.').pop();
        return ext
    }
</script>

<input type='file' onchange="readURL(this);"> 

<script>
function readURL(input) {
    if (input.files && input.files[0]) {
        if (getFileExtension(input.files[0].name)=="png") { // this line is our problem 
            var reader = new FileReader();
            reader.onload = function (e) {
                document.getElementById("pdf").innerHTML="<img id='blah' src=" +
                                       e.target.result + " alt='your image' width='450'>"
            }
            reader.readAsDataURL(input.files[0]);
        }
    }
}
</script>

4
console.log(ext); 或者其他类似代码。输出会出现在浏览器控制台中。 - Pointy
1
或者,如果你想要在所有浏览器上都能工作的东西,你可以使用老式的方法:alert(input.files[0].name); - Justin Niessner
或者你可以使用 document.write。 - Avitus
5个回答

7
您可以通过编写以下代码在JavaScript中打印值:

console.log(value);

大多数浏览器都有一个控制台,可以通过按下f12键来打开。这些值将会在控制台中显示。

如果您正在使用Internet Explorer,请记得要打开开发者工具(f12),否则您将会收到一个错误提示。


0

在Javascript中,有几种打印输出行的方法。 我列举了几种非常有效的方法。

let a = 23;

console.log(a) // 23
process.stdout.write(a) //23
alert(a) //23

每个都会给出相同的结果。愉快的编码,干杯。


请注意,process.stdout.write 仅适用于 Node,而 alert 仅适用于浏览器。 - jhpratt

0
var msg = 'value: ' + yourVar;
if (console) {
    console.log(msg); // or console.info(msg) or whatever
} else {
    alert(msg);
}

就我个人而言,我编写了一个简单的轻量级控制台,以便我可以将输出发送到页面上的任何 div。我这样做是为了避免像 Avitus 在评论中建议的那样频繁使用 document.write


0

你可以创建预定义的测试来确保你的函数在不同情况下都能给出正确的输出:

function test_getFileExtension() {
    test("foo.png", "png");
    test("bar.py", "py");
    test("the_really_long_name.txt", "txt");
    test("playlist.xspf", "xspf");
    test("%20.txt", "txt");
    test("file_without_extension", ""); // actually gives an error

    function test(input,output) {
        var o=getFileExtension(input);
        if (o === output) {
            console.log("OK: "+input+" --> "+o);
        } else {
            console.log("ERROR: "+input+" --> "+o);
        }
    }
}

然后,一旦您更新了函数,就再次调用test_getFileExtension(),并确保它仍按预期工作。


0

我会使用Firefox的Firebug插件来获取更详细的错误描述,并查看插入到console.log(value)中的值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接