在函数 javascript 中遇到 True false 语句,有什么意义?

用户2620493

我从 sharepoint 中撕掉了一些代码,并注意到它们的函数中有随机的真假语句。我的第一个想法是他们会阻止下一条语句的运行,但是当我做了一个简单的测试时,控制台日志显示它无论如何都运行了。

有人可以让我知道这是为了什么,重点是什么,以及你为什么要这样做。

这是我遇到的一个例子,并将发布我的测试。

 function _SubmitFormPost(a, d, c) {
    if (typeof MSOWebPartPageFormName != "undefined") {

        var b = document.forms[MSOWebPartPageFormName];

        if (null != b)
        {
            if (d != undefined && d == true || typeof b.onsubmit == "undefined" || b.onsubmit == null || b.onsubmit() != false) {
                //HERE IS A RANDOM EXAMPLE OF T/F 
                typeof window.WebForm_OnSubmit == "function" && window.WebForm_OnSubmit();
                if (ajaxNavigate.get_search().match(new RegExp("[?&]IsDlg=1")) != null)
                a += a.indexOf("?") == -1 ? "?IsDlg=1" : "&IsDlg=1";
                if (FV4UI())
                try {
                    var e = SP.Ribbon.PageManager.get_instance().get_ribbon().get_selectedTabId();
                    if (Boolean(e)) {
                        a = StURLSetVar2(a, "InitialTabId", escapeProperly(e));
                        a = StURLSetVar2(a, "VisibilityContext", "WSSTabPersistence")
                    }
                } catch (f) {}
                if (c != undefined && c == true) {
                    a = DemoteIntoFormBody(b, a, "owsfileref");
                    a = DemoteIntoFormBody(b, a, "NextUsing")
                }
                b.action = STSPageUrlValidation(a);
                b.method = "POST";
                if (isPortalTemplatePage(a))
                b.target = "_top";
                !bValidSearchTerm && _ClearSearchTerm("");
                b.submit()
            }
        }
    }
}

这是我的测试,控制台窗口击中了我认为不会的所有 console.logs

function s(){
    console.log('in s')
    //is true
    if(1==1){
        //is true
        if(2==2){
            console.log(' if 2==2 and eval of t/f is ',typeof(1) =="function")
            //is false -- expexted to skip console.log
            typeof(1) =="function"
            console.log('2 is 2')
        }
        //is true
        2==3
        if(3==3){
            console.log('3==3')
        }
    }
}
s()
三聚氰胺

&&不只是返回一个值。它还具有(流控制)效果:仅当其第一个操作数为真时才评估其第二个操作数。也就是说,如果已经是,A && B则不会运行(这称为短路评估。)BAfalse

换句话说,

typeof window.WebForm_OnSubmit == "function" && window.WebForm_OnSubmit();

表现得像

if (typeof window.WebForm_OnSubmit == "function")
    window.WebForm_OnSubmit();

但略短。

重点是不返回truefalse(结果被忽略);关键是只有window.WebForm_OnSubmit在定义为函数时才调用

相似地,

!bValidSearchTerm && _ClearSearchTerm("");

像这样工作:

if (!bValidSearchTerm)
    _ClearSearchTerm("");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

if(true || true || false)语句在javascript中是true吗?

来自分类Dev

嵌套(条件)?true:JavaScript中的false语句

来自分类Dev

jQuery函数中的true或false

来自分类Dev

尝试通过true和false语句在JS中编写函数

来自分类Dev

使用“ JavaScript:绝对指南”中的onLoad函数有什么意义?

来自分类Dev

JavaScript中的true和false与true和falsy有什么区别?

来自分类Dev

为什么JS中的true =='true'语句返回false?

来自分类Dev

MFC的OnInit()函数中return true和return false有什么区别

来自分类Dev

如果数组中存在特定字符,则返回 true 或 false 的 Javascript 函数

来自分类Dev

将变量设置为True或False有什么意义?

来自分类Dev

为什么[False]中的False == False会返回True?

来自分类Dev

返回值中的函数混淆,显式的true和false是什么?

来自分类Dev

为什么我从 print(same(p) 函数中得到 False?我应该得到 True

来自分类Dev

即使if语句为true,函数也会返回false

来自分类Dev

即使函数返回 False,If 语句也计算为 True

来自分类Dev

在JavaScript中,我似乎无法针对布尔值是否为True / False做出if语句

来自分类Dev

Ajax函数问题在wordpress中返回true和false

来自分类Dev

`python3`在`list[True, True, True]`时定义一个函数,当列表中存在`False`时返回`False`

来自分类Dev

为什么在Javascript中,布尔运算符可能既不返回false也不返回true?

来自分类Dev

为什么true和false可以是Javascript中的字符串

来自分类Dev

在JavaScript中返回1或0而不是true或false有不利之处吗?

来自分类Dev

python语法中的True和False有什么区别?

来自分类Dev

为什么“ True or False”比“ False或True”要快?

来自分类Dev

JavaScript中的原型有什么意义?为什么不直接将方法添加到构造函数?

来自分类Dev

JavaScript中的原型有什么意义?为什么不直接将方法添加到构造函数?

来自分类Dev

在PyAudio`open`方法中设置`output = False`有什么意义?

来自分类Dev

在JavaScript中声明const有什么意义

来自分类Dev

为什么jquery具有只返回true和false的函数“ returnTrue()”和“ returnFalse()”?

来自分类Dev

JavaScript:我正在用JavaScript进行递归,并且尝试从条件中返回true或false,但是什么也没看到

Related 相关文章

  1. 1

    if(true || true || false)语句在javascript中是true吗?

  2. 2

    嵌套(条件)?true:JavaScript中的false语句

  3. 3

    jQuery函数中的true或false

  4. 4

    尝试通过true和false语句在JS中编写函数

  5. 5

    使用“ JavaScript:绝对指南”中的onLoad函数有什么意义?

  6. 6

    JavaScript中的true和false与true和falsy有什么区别?

  7. 7

    为什么JS中的true =='true'语句返回false?

  8. 8

    MFC的OnInit()函数中return true和return false有什么区别

  9. 9

    如果数组中存在特定字符,则返回 true 或 false 的 Javascript 函数

  10. 10

    将变量设置为True或False有什么意义?

  11. 11

    为什么[False]中的False == False会返回True?

  12. 12

    返回值中的函数混淆,显式的true和false是什么?

  13. 13

    为什么我从 print(same(p) 函数中得到 False?我应该得到 True

  14. 14

    即使if语句为true,函数也会返回false

  15. 15

    即使函数返回 False,If 语句也计算为 True

  16. 16

    在JavaScript中,我似乎无法针对布尔值是否为True / False做出if语句

  17. 17

    Ajax函数问题在wordpress中返回true和false

  18. 18

    `python3`在`list[True, True, True]`时定义一个函数,当列表中存在`False`时返回`False`

  19. 19

    为什么在Javascript中,布尔运算符可能既不返回false也不返回true?

  20. 20

    为什么true和false可以是Javascript中的字符串

  21. 21

    在JavaScript中返回1或0而不是true或false有不利之处吗?

  22. 22

    python语法中的True和False有什么区别?

  23. 23

    为什么“ True or False”比“ False或True”要快?

  24. 24

    JavaScript中的原型有什么意义?为什么不直接将方法添加到构造函数?

  25. 25

    JavaScript中的原型有什么意义?为什么不直接将方法添加到构造函数?

  26. 26

    在PyAudio`open`方法中设置`output = False`有什么意义?

  27. 27

    在JavaScript中声明const有什么意义

  28. 28

    为什么jquery具有只返回true和false的函数“ returnTrue()”和“ returnFalse()”?

  29. 29

    JavaScript:我正在用JavaScript进行递归,并且尝试从条件中返回true或false,但是什么也没看到

热门标签

归档