12

1-var str = “hgDzGHjhcxghvcgxzhjzcgjhxzgcjhgsduyfuys”将字符串中出现次数最多的字母弹框输出

复制代码
 var str = 'hgDzGHjhcxghvcgxzhjzcgjhxzgcjhgsduyfuys'
       var arr=str.split("");  // 转换为数组
        arr=arr.sort(); // 排序
        var n=1;    // 记录出现次数
        var arr1=[];    
        var maxmore="";
        for(var i=0;i<arr.length;i++){
            if(arr[i]===arr[i+1]){
                maxmore=arr[i];
                n++;
            }
            else{
                arr1[n]=maxmore;
                n=1
            }
        }
        alert('最多的字母'+maxmore);
复制代码
2-举例实现对象的深拷贝
复制代码
 //使用递归的方式实现数组、对象的深拷贝
  function deepClone1(obj) {
  //判断拷贝的要进行深拷贝的是数组还是对象,是数组的话进行数组拷贝,对象的话进行对象拷贝
  var objClone = Array.isArray(obj) ? [] : {};
  //进行深拷贝的不能为空,并且是对象或者是
  if (obj && typeof obj === "object") {
    for (key in obj) {
      if (obj.hasOwnProperty(key)) {
        if (obj[key] && typeof obj[key] === "object") {
          objClone[key] = deepClone1(obj[key]);
        } else {
          objClone[key] = obj[key];
        }
      }
    }
  }
  return objClone;
}
复制代码
3-举例实现对象方法的继承
复制代码
 function Parent(firstname)
{
  this.fname=firstname;
  this.age=40;
  this.sayAge=function()
  {
    console.log(this.age);
  }
}
function Child(firstname)
{
  this.parent=Parent;
  this.parent(firstname);
  delete this.parent;
  this.saySomeThing=function()
  {
    console.log(this.fname);
    this.sayAge();
  }
}
var mychild=new Child("李");
mychild.saySomeThing();
复制代码
4-写一个左中右布满全屏,其中左右固定宽度 200px,中间部分自适应,要求先加载中间部分,写出结构和样式
复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
     html,body{ 
         margin: 0px;
         width: 100%; 
         } 
#left,#right{
    width: 200px;
    height: 200px;
    background-color: rgb(36, 219, 112);
    position: absolute;
    }
    #left{
        left: 0;
        top:0;
        }
    #right{
        right: 0;
        top:0;
        }
    #center{
        margin: 0 200px;
        background-color: rgb(243, 55, 55);
        height: 200px;
        }

    </style>
</head>
<body>
    <div id="left">左边</div>
    <div id="center">中间</div>
    <div id="right">右边</div>
</body>
</html>
复制代码
5-封装一个 jqery 的插件
复制代码
 (function($){
    /**定义函数,jquery插件调用函数*/
    $.fn.select=function(options,param){
        if(typeof options == "string"){
            var method = $.fn.select.methods[options];
            if(method){ return method(this,param); }
        } 
    }
    /**定义函数事件*/
    $.fn.select.methods={
        onLoadSuccess: function(){},
        onSelect: function(record){},
        loadData: function(jq, data){
            return jq.each(function(){ loadData(this, data); });
        },
        reload: function(jq, ajax){
            return jq.each(function(){ request(this, ajax); });
        },
        setValue: function(jq, value){
            return jq.each(function(){ setValue(this, value); });
        }
    }
    /**函数默认属性及事件*/
    $.fn.select3.defaults = {
        id: null,
        disabled: false,
        //url:base_url+'/select/getSelectProj',
        dataType:'json',
        type:'GET',
        //contentType:'application/json',
        valueField: 'uuid',
        textField: 'name',
        onLoadSuccess: function(data){},// 加载成功时触发的事件
        onLoadError: function(err){},
        onSelect:function(row){}// 选中时触发的事件
    };
        /**请求数据*/
    function request(target, options){
        var opts = $.data(target, 'select3').options;
        if (options.url){
            opts = $.extend(opts, options);
        }else{
            return;
        }
        $.ajax({ url : opts.url, type : opts.type, data : opts.param, //dataType : opts.dataType, contentType : opts.contentType, success:function(data){ loadData(target, data); }, error:function(){ opts.onLoadError.apply(this, arguments); } })
    };
    /**加载数据*/
    function loadData(target, data){
        var rows = data.rows;
        var opts = $.data(target, 'select3').options;
        $(target).empty();
        for(var i=0,j=rows.length; i<j; i++){
            var item = $('<option></option>').appendTo(target);
            item.attr('value', rows[i][opts.valueField]);
            item.html(rows[i][opts.textField]);
        }

        opts.onLoadSuccess.call(target, data);// 回调成功加载事件方法
        $(target).change(function(){ var itemValue = $(this).children('option:selected').val(); for(var i=0,j=rows.length; i<j; i++){ if (rows[i][opts.valueField] == itemValue){ opts.onSelect.call(target, rows[i]); return; } } }); }; /**设置值*/ function setValue(target, value){ var opts = $.data(target, 'select3').options; $(target).val(value); }; })(jQuery)
 
//使用
<script src="select.js"></script>
<script language="javascript">
    // 初始化
    $("#id").select({
        url:,
        onLoadSuccess:function(){
        }
    });
    // 调用指定函数
    $("#id").("reload",{参数});
</script>
复制代码
posted @ 2021-03-06 21:29  故人-w  阅读(17)  评论(0)    收藏  举报