当前位置: 代码迷 >> JavaScript >> 如果语句条件不满足的Javascript?
  详细解决方案

如果语句条件不满足的Javascript?

热度:95   发布时间:2023-06-13 12:13:44.0

我确定这是一个愚蠢的逻辑错误,但我一直无法看到我做错了什么。 当使用除1024以外的任何值时,将触发正确的if语句,由于某种原因,不满足1024条件。 提前致谢!

var width = 1024; //screen.width;
var height = 768; //screen.height;
var subpageModifier;

if (width > 360 && width < 767) {
    subpageModifier = .28;
};
if( width > 767 && width < 800){
    subpageModifier = 0.15;
};
if (width > 800 && width < 961) {
    subpageModifier = .15;
}; 
if (width > 961 &&  width >1135){
    subpageModifier = 0.3;
};
if (width >1135 && width < 1535){
    subpageModifier = 0.15;
};

注意:如果有帮助,我正在使用AngularJS

(width > 961 &&  width >1135)

Second >应该是<

(width > 961 &&  width <1135)

PS:使用if-else ,如果找到匹配项,则无需检查所有条件

if (width > 961 &&  width >1135){
    subpageModifier = 0.3;
};

应该小于1135:

if (width > 961 &&  width < 1135){
    subpageModifier = 0.3;
};

代替

if (width > 961 &&  width >1135){

采用:

if (width > 961 &&  width < 1135){

理想情况下,所有内容都应为:

var width = 1024; //screen.width;
var height = 768; //screen.height;
var subpageModifier;

if (width >= 360 && width <= 767) {
    subpageModifier = .28;
}else if( width > 767 && width <= 800){
    subpageModifier = 0.15;
}else if (width > 800 && width <= 961) {
    subpageModifier = .15;
}else if (width > 961 &&  width <= 1135){
    subpageModifier = 0.3;
}else if (width >1135 && width <= 1535){
    subpageModifier = 0.15;
}else{
    //do something
}

有3个更新。

  1. if语句后不应有分号。
  2. 对于以上条件,应使用if-else。
  3. 您的if (width > 961 && width >1135){对于第二个条件有问题。

这是您的问题:

if (width > 961 &&  width > 1135){
    subpageModifier = 0.3;
};

两者都是>符号

  相关解决方案