美文网首页让前端飞
品一品编程 --- 4

品一品编程 --- 4

作者: Candy程 | 来源:发表于2017-04-12 19:03 被阅读0次
    问题描述:

    随机生成一个[min,max]区间内的整数

    程序如下:
    var getRandomInt = function(min,max) {
        var r = Math.round(Math.random()*(max-min) + min)
        return Math.max(Math.min(r,max),min)
    }
    getRandomInt(10,86) //52 or 10<=other<=86
    
    问题描述:

    有一个长度为100的数组,以优雅的方式求出该数组的前10个元素之和

    var arr = [1,2,3,4,5,6,...,99,100]
    var getSum = function(array) {
        //你的代码
    }
    getSum(arr) //55
    
    程序如下:
    var getSum = function(array) {
       //你的代码
      return array.slice(0,11).reduce(function(pre,cur) {
         return pre + cur
      },0)
    }
    
    问题描述:

    不使用loop循环,创建一个长度为100的数组,并且每个元素的值等于于它的下标

    程序如下:
    var creArr = function() {
      var arr = Array(100).join(',').split(',').map(function(item,idex) {
        return idex
      })
      return arr
    }
    creArr()
    
    问题描述:
    var a = {n:1};  
    var b = a; // 持有a,以回查  
    a.x = a = {n:2};  
    alert(a.x);// ?
    alert(b);//?
    
    输出:

    alert(a.x);// undefined
    alert(b);// {n:1,x:{n:2}}

    程序解析:
    var a = {n:1}; /*定义a,赋值为{n:1},假设指向存储地址为add_1*/
    var b = a; /*定义b,赋值为a,指向同一存储地址add_1*/  
    a.x = a = {n:2};
    /*(1):定义a.x,赋值为a,即{n:1},存储地址add_1上面的内容被更改
      (2):a.x重新赋值为{n:2},存储地址add_1上面的内容被更改
      (3):a重新赋值为{n:2},更改存储地址add_2
    */
    alert(a.x);/*现在a的存储地址add_2,内容为{n:2},上面并不存在a.x属性,所以为undefined*/ 
    alert(b);/*现在b的存储地址add_1,内容为{n:1,x:{n:2}}*/ 
    

    相关文章

      网友评论

        本文标题:品一品编程 --- 4

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