zoukankan      html  css  js  c++  java
  • 渡一——*******&&习题整理&&********

    1.传字符串返回字节长度

    1-1.当前字符位的unicode > 255,那么该字符字节长度为2;
    1-2.<255为1;

    //1-1
    var str = "adfsf;fdkdsflwe";
    function bytesLen(str){
        var len = str.length;//默认都是1,后面找是2的就加1
        for(var i=0;i<str.length;i++){
            if(str.charCodeAt(i)>255){
                len++
            }
        }
        return len;
    }
    //1-2
    function bytesLen2(str){
        var len = 0;
        for(var i=0;i<str.length;i++){
            //默认是0,后面判断是加几
            str.charCodeAt(i) > 255 ? count += 2 : count++;
        }
        return len;
    }

    可正常计算的范围
    前17后17位
    小数点前17位,后17位

    10000000000000001 + 10000000000000001        //小数点前17位
    0.10000000000000001 + 0.10000000000000001   //小数点后17位数

    面视题整理

    作用域

    1.

    window.onload = function(){
        var length = 88;
        function test(){
            console.log(this.length);
        }
        var obj = {
            length:99,
            action:function(test){
                test();             //此处没有调用者,this-->window
                arguments[0]();     //arguments有两个参数,arguments[0]就是test函数,this-->[test,[1,2,3]],this.length=2;
            }
        }
        obj.action(test,[1,2,3]);
    }
    
    var f = obj.action;
    f();    //this.length-->88;这里还是全局调用
    
    function f(){
        console.log(this) //[f,2,3]
    };
    var arr = [f,2,3];
    arr[0]();
    var f1 = arr[0];
    f1()    //window

    2.

    //2-1.
    var a=10;
    function test(){
        console.log(a);     //undefined 
        a = 100;
        console.log(this.a);//this指向window 10,这里调用都是window
        var a;
        console.log(a);     //100 
    }
    test();
    
    //2-2
    var a=10;
    function test(){
        console.log(a);     //这里只有全局变量a 10 
        a = 100;
        console.log(this.a);//100
        console.log(a);     //100 
    }
    test();
    
    //2-3
    var d = 100;
    function f4(){
        var d = 200;
        console.log(this.d); //100 this指向window
    }
    f4();

    3.

    var a = 10;
    function f(){
        var b = 2 * a;  //没有this.a 就只取局部变量a,这里a:undefined; b=2*undefined:NaN
        var a = 20;
        var c = a + 1;  //21
        console.log(b);
        console.log(c);
    }
    f1();
  • 相关阅读:
    国内公有云对比(1)- 功能篇
    国内公有云对比(1.1)- 功能篇之新浪云
    人不成熟的六大特征
    HDU1506 Largest Rectangle in a Histogram (动规)
    windows pipe
    LeetCode || Candy
    Spin.js-CSS动画进度载入器
    poj 2932 Coneology (扫描线)
    虚拟存储器--虚拟地址与物理地址
    eclipse下的ssh框架整合过程及測试
  • 原文地址:https://www.cnblogs.com/lisa2544/p/15307345.html
Copyright © 2011-2022 走看看