美文网首页
js断点调试与工具方法

js断点调试与工具方法

作者: 递归循环迭代 | 来源:发表于2018-01-16 10:45 被阅读26次
    //1.变量转换Array()或者Number()来进行变量转换是常用的做法。始终使用原始数据类型来转换变量效率更高。
    var myVar   = "3.14159",
    str     = ""+ myVar,//  to string
    int     = ~~myVar,  //  to integer
    float   = 1*myVar,  //  to float
    bool    = !!myVar,  /*  to boolean - any string with length
    and any number except 0 are true */
    array   = [myVar];  //  to array
    (3.1415).toFixed(3); // Rounding the number, returns "3.142"
    //转换日期(new Date(myVar))和正则表达式(new RegExp(myVar))必须使用构造函数,而且创建正则表达式的时候要使用/pattern/flags的形式。
    
    //2.有很多变通方法可以让数字的字面值看起来像对象。
    2..toString(); // 第二个点号可以正常解析
    2 .toString(); // 注意点号前面的空格
    (2).toString(); // 2先被计算
    //3.判断属性是否存在这个问题包含两个方面,既有检查属性时候存在,还要获取属性的类型:
     if(value==="" || value===undefined || value===null){
                return null;
            }else{
                return value;
            }
    //给函数传递参数,当函数既有必选又有可选参数的时候,我们可能是这样做的:
    function doSomething(arg0, arg1, arg2, arg3, arg4) {
      ...
    }
    doSomething('', 'foo', 5, [], false);
    //而传递一个对象总是比传递一堆的参数更方便:
    function doSomething() {
      // Leaves the function if nothing is passed
      if (!arguments[0]) {
      return false;
      }
      var oArgs   = arguments[0]
      arg0    = oArgs.arg0 || "",
      arg1    = oArgs.arg1 || "",
      arg2    = oArgs.arg2 || 0,
      arg3    = oArgs.arg3 || [],
      arg4    = oArgs.arg4 || false;
    }
    //这只是一个把对象作为参数传递的一个很简单的例子,例如,我们还可以声明一个对象,变量名作为Key,默认值作为Value。
    doSomething({
      arg1    : "foo",
      arg2    : 5,
      arg4    : false
    });
    
    //4.为replace()方法传递一个函数,替换字符串的某个部分为其它的值,最好的方法就是给String.replace()传递一个独立的函数。
    var sFlop   = "Flop: [Ah] [Ks] [7c]";
    var aValues = {"A":"Ace","K":"King",7:"Seven"};
    var aSuits  = {"h":"Hearts","s":"Spades",
    "d":"Diamonds","c":"Clubs"};
    sFlop   = sFlop.replace(/
    \w+
    /gi, function(match) {
      match   = match.replace(match[2], aSuits[match[2]]);
      match   = match.replace(match[1], aValues[match[1]] +" of ");
      return match;
    });
    // string sFlop now contains:
    // "Flop: [Ace of Hearts] [King of Spades] [Seven of Clubs]"
    
    //5.有的时候,循环中又嵌套了循环,你可能想在循环中退出,则可以用标签:
    outerloop:
    for (var iI=0;iI<5;iI++) {
      if (somethingIsTrue()) {
      // Breaks the outer loop iteration
      break outerloop;
      }
      innerloop:
      for (var iA=0;iA<5;iA++) {
        if (somethingElseIsTrue()) {
        // Breaks the inner loop iteration
        break innerloop;
      }
      }
    }
      strChange: function (str) {
    
            for (let k of Object.keys(str)) {
                let s = '' + str[k]
                if (str.length > 7) {
                    str[k] = s.slice(0, 6) + '...'
                }
            }
        },
    
     getNowFormatDate: function () {
            let date = new Date();
            let year = date.getFullYear();
            let month = date.getMonth() + 1;
            let day = date.getDate();
            let hour = date.getHours();
            let minute = date.getMinutes();
            let second = date.getSeconds();
            let currentdate = (year + '年' + month + '月' + day + '日 ' + hour + ':' + minute + ':' + second);
            return currentdate;
        },
    

    JS断点调试教程!!!

    相关文章

      网友评论

          本文标题:js断点调试与工具方法

          本文链接:https://www.haomeiwen.com/subject/sufsoxtx.html