Каков порядок приоритета оператора в Visual Basic 6.0?

var BrowserDetect = {
        init: function () {
            this.browser = this.searchString(this.dataBrowser) || "Other";
            this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "Unknown";
        },
        searchString: function (data) {
            for (var i = 0; i < data.length; i++) {
                var dataString = data[i].string;
                this.versionSearchString = data[i].subString;

                if (dataString.indexOf(data[i].subString) !== -1) {
                    return data[i].identity;
                }
            }
        },
        searchVersion: function (dataString) {
            var index = dataString.indexOf(this.versionSearchString);
            if (index === -1) {
                return;
            }

            var rv = dataString.indexOf("rv:");
            if (this.versionSearchString === "Trident" && rv !== -1) {
                return parseFloat(dataString.substring(rv + 3));
            } else {
                return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
            }
        },

        dataBrowser: [
            {string: navigator.userAgent, subString: "Edge", identity: "MS Edge"},
            {string: navigator.userAgent, subString: "MSIE", identity: "Explorer"},
            {string: navigator.userAgent, subString: "Trident", identity: "Explorer"},
            {string: navigator.userAgent, subString: "Firefox", identity: "Firefox"},
            {string: navigator.userAgent, subString: "Opera", identity: "Opera"},  
            {string: navigator.userAgent, subString: "OPR", identity: "Opera"},  

            {string: navigator.userAgent, subString: "Chrome", identity: "Chrome"}, 
            {string: navigator.userAgent, subString: "Safari", identity: "Safari"}       
        ]
    };

    BrowserDetect.init();


    var bv= BrowserDetect.browser;
    if( bv == "Chrome"){
        $("body").addClass("chrome");
    }
    else if(bv == "MS Edge"){
     $("body").addClass("edge");
    }
    else if(bv == "Explorer"){
     $("body").addClass("ie");
    }
    else if(bv == "Firefox"){
     $("body").addClass("Firefox");
    }


$(".relative").click(function(){
$(".oc").toggle('slide', { direction: 'left', mode: 'show' }, 500);
$(".oc1").css({
   'width' : '100%',
   'margin-left' : '0px',
   });
});
15
задан Peter Mortensen 27 April 2015 в 11:58
поделиться

3 ответа

Порядок

  1. ^
  2. - Приоритета Арифметической операции (унарное отрицание)
  3. *, /
  4. \
  5. Mod
  6. +, - (сложение в двоичной системе / вычитание)
  7. &

Операционный Источник Порядка

  1. Not
  2. And
  3. Or
  4. Xor
  5. Eqv
  6. Imp

Приоритета Логической операции Порядка

  1. =
  2. <>
  3. <
  4. >
  5. <=
  6. >=
  7. Like, Is
Приоритета Сравнения:
Sams Преподают Себе Visual Basic 6 за 24 Часа — Приложение A: Приоритет Оператора

16
ответ дан 1 December 2019 в 02:20
поделиться

Это зависит от того, являетесь ли Вы в отладчике. Действительно. ну, вид.

Круглые скобки на первом месте, конечно. Затем arithmateic (+, - *,/, и т.д.). Затем сравнения (>, < =, и т.д.). Затем логические операторы. Прием является порядком выполнения в данном уровне приоритета, не определяется. Учитывая следующее выражение:

If A < B And B < C Then

Вам гарантируют эти <, операторы неравенства будут оба оценены перед логическим And сравнение. Но Вам не гарантируют, какое сравнение неравенства будет выполняться сначала.

IIRC, отладчик выполняется слева направо, но скомпилированное приложение выполняется справа налево. у меня могли быть они назад (это было долгое время), но важная вещь, они отличаются. Фактический приоритет не изменяется, но порядок выполнения мог бы.

10
ответ дан 1 December 2019 в 02:20
поделиться

круглые скобки Использования

<час>

РЕДАКТИРОВАНИЕ: это - мой совет для нового кода! Но Oscar читает чужой код, так должен понять это так или иначе. Я предлагаю ручную тему VBA Приоритет Оператора . VBA является 99%-м эквивалентом VB6 - и вычисление выражения является 100%-м эквивалентом. Я вставил информацию о логическом операторе здесь.

Логические операторы оценены в следующем порядке приоритета:

Not   
And   
Or   
Xor   
Eqv   
Imp   

тема также объясняет приоритет для операторов сравнения и арифметических операторов.

я предложил бы, как только Вы выяснили precendence, Вы вставляете круглые скобки, если нет некоторое серьезное основание не отредактировать код.

3
ответ дан 1 December 2019 в 02:20
поделиться