JS基础学习常用方法 每日一练

这篇博客涵盖了JavaScript的基础知识和实践应用,包括圣杯模式、深层克隆、原型链去重等重要概念,同时讲解了事件处理函数的封装,如addEvent、stopBubble和cancelHandler,还涉及正则表达式在小驼峰命名转换中的应用,以及兼容性地获取元素样式的方法。适合前端入门学习者提升技能。
摘要由CSDN通过智能技术生成

目录


圣杯模式

深层克隆

原型链去重

封装type

选项卡

定时器

点击变色

封装children

封装addEvent兼容性方法--给一个DOME对象添加一个事件处理函数

封装取消事件冒泡函数stopBubble

封装阻止默认事件的函数 cancelHandler

事件委托

正则小驼峰转换 the-first-name

封装一个兼容性的获取元素样式的函数getStyle


圣杯模式

function inhrit(Target,Origin){
        var F = function(){};
        F.prototype = Origin.prototype;
        Target.prototype = new F();
        Target.prototype.constructor = Target;
        Target.prototype.uber = Origin.prototype;
    }

    Father.prototype.lastName = "haha";
    function Father(){};
    function Son(){};

    inhrit(Son,Father);

    var son = new Son();
    var father = new Father();
    
    console.log(son.lastName); //可以访问到父级上的 lastName属性

深层克隆

        var obj = {
            name : "abc",
            wife : {
                name : "xiaoli",
                son : {
                    name : "xiaobai"
                }
            }
        }
        var obj1 = {

        }


 function clone(origin,target){
            var target = target || {},
                toStr = Object.prototype.toString,
                arrStr = "[object Array]";
            for(var prop in origin) {
                if(origin.hasOwnProperty(prop)) {
                    if(origin[prop] !== null && typeof(origin[prop]) == 'object') {
                        if(toStr.call(origin[prop]) == arrStr) {
                            target[prop] = [];
                        }else{
                            target[prop] = {};
                        }
                        clone(origin[prop],target[prop])
                    }else{
                        target[prop] = origin[prop];
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值