【发布时间】:2015-09-26 00:02:06
【问题描述】:
首先我是 Javascript 新手,所以如果我问这样一个微不足道的问题,请不要讨厌我。
我在 Google 上搜索了几个小时,但我找不到我的问题的解决方案。我已经声明了一个全局变量“状态”,这是错误的。但是如果我检查函数中的数据类型,它会显示“字符串”,这总是正确的,所以我的脚本根本不起作用。
var status = false;
function slide(element) {
if (status) {
slideUp(element);
} else {
slideDown(element);
}
}
function slideDown(element) {
status = true;
// Testprint todo remove
alert('Status is ' + status + ' and is type: ' + typeof status);
// todo
}
function slideUp(element) {
status = false;
// Testprint todo remove
alert('Status is ' + status + ' and is type: ' + typeof status);
// todo
}
我错了还是我自己写了一个函数来每次将布尔变量转换为“真正的”布尔变量?我已经自己测试过了,这显示了布尔数据类型...
这很好用...
var test = false;
myTestFunc();
myTestFunc() {
if(!test) {
test = true;
alert('Test is false');
} else {
test = false;
alert('Test is true');
}
alert('Test contains: ' + test + ' and has the type: ' + typeof test);
}
我明白了,Javascript 似乎随机声明变量。有没有办法将我的变量设置为布尔数据类型?
是否有机会强制初始化为布尔值,如 int varname?
【问题讨论】:
-
alert和console.log将所有内容类型转换为string -
文档写入还说“状态为真并且类型为:字符串”......而且我的 var 每次都是真的我在浏览器的调试器中测试了它。即使我不使用“警报”
标签: javascript string types initialization boolean