我为一个打字机应用程序写的脚本得到了一些奇怪的结果。就像使用打字机一样,在你需要点击RETURN之前,你可以在一行上输入很多字符。我试图确定键入了多少(固定宽度)字母,并根据可变行长度检查该数字(因为,就像使用打字机时一样,您可能无法在最左边的边缘开始输入)。
以下是我的全局变量:
var charLine = "Hello world"; // what has been typed
var paperWidth = 900; // width of "paper" in the typewriter
var strikePosition = 488; // where the type strikes the paper (known value, the center of the typewriter)
var charWidth = 44; // width of each character
这就是我如何确定strikePosition相对于纸张放置在打字机中的位置,然后用它来确定剩余的像素数。
var positionDifference = function (paperPosition){
return strikePosition - paperPosition;
};
var remainingPixels = function (positionDifference) {
return paperWidth - positionDifference;
};
remainingPixels (20);
以上所有内容都非常完美。事情开始变得奇怪了。根据剩余的像素,我计算输入的字符,然后乘以宽度:
var charCount = function (){
return charLine.length * charWidth;
};
charCount();
然后......我检查一下"返回"有必要的。给定当前参数,这应该返回false,但它返回true。
var charCheck = function () {
if (charCount <= remainingPixels){
return false;
}
else {
return true;
}
};
charCheck();
我错过了什么吗?
答案 0 :(得分:0)
charCount是一个函数。所以你应该在if。
上执行它var charCheck = function () {
if (charCount() <= remainingPixels()){
return false;
}
else {
return true;
}
};
charCheck();