我想测试这个函数的返回值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>
答案 0 :(得分:7)
您可以通过编写
在javascript中打印出值console.log(value);
大多数浏览器都有一个控制台,按f12
即可看到。这些价值将会在那里结束。
如果您使用的是Internet Explorer,请记得打开开发人员工具(f12),否则您将收到错误。
答案 1 :(得分:0)
var msg = 'value: ' + yourVar;
if (console) {
console.log(msg); // or console.info(msg) or whatever
} else {
alert(msg);
}
就个人而言,我写了一个简单的轻量级控制台,所以我可以输出到页面上的任何div。正如Avitus在评论中所建议的那样,我做到了而不是很多document.write
。
答案 2 :(得分:0)
我会使用Firefox的Firebug插件来获取更详细的错误说明,以及查看插入console.log(值)的值
答案 3 :(得分: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()
,并确保它仍能正常运行。
答案 4 :(得分:0)
有几种方法可以用JavaScript打印行。 我列出了一些效果很好的方法。
let a = 23;
console.log(a) // 23
process.stdout.write(a) //23
alert(a) //23
每一个都会给出相同的结果。祝您编码愉快!