zoukankan      html  css  js  c++  java
  • JS与CSS那些特别小的知识点区别

    1:target与currentTarget的区别
    
    currentTarget指向的事件绑定的元素,target指向的是你点击的元素
    2:attr与jprop在jQuery在API当中的区别
    
    2.1:首先要区分html标签与DOM元素对象的区别,页面加载以后,HTML标签在内存中都会对应一个DOM元素对象,他会将HTML标签固有的特性转化为对象属性,
    2.2:所以对于标签中自定义的特性只能使用attr方法,其他的可以使用prop方法
    3:pointer-events: none属性的使用
    
    pointer-events: none顾名思义是鼠标事件失效,当处于父子关系当中时,我们应用在父元素的话,会直接透过父元素点击到子元素上面;当处于并列关系时,他会影响到绝对定位的层级关系。
    4:箭头函数当中的this指向的是函数运行是的宿主环境,和普通函数不同
    4:color+border = border-color
    很少人知道,定义了一个元素的文字颜色,意味着这个元素的边框颜色也被定义了
    5:实际上垂直方向的排列计算是基于父元素的宽度而不是高度
    在子元素设置margin-top,margin-bottom,padding-top,padding-bottom的时候,如果使用的是百分比计算,他实际上是相对于父元素的宽度进行计算的
    6:oninput&onchange都是事件对象,当输入的值发生改变时触发事件
    区别:
        oninput是在值改变时立即触发
        onchange是在值改变后失去焦点才触发
    propertychange功能和oninput相同,用以替代oninput在IE9以下的不兼容性
        
    $('#username').on('input propertychange', function() {  
    
        $('#result').html($(this).val().length + ' characters');  
    
    })
    7:this的指向问题 [this的取值取决于函数被调用时候,函数定义的时候是不能确定this的指向]
    1构造函数当中的this
        如果函数做为构造函数使用,那么其实的this当然指向构造数来的对象
    
    2函数作为一个对象的属性
        当函数作为一个对象的属性被调用时,this就指向调用该属性的对象
    
    3当一个函数被call或者apply调用时
        this的值取决于传入的对象
        
    4全局 & 调用普通函数时
        this都是指向window
        
    5在构造函数的prototype的this
        Function.prototype.getName = function (){
            console.log(this)
        }
        this也指向构造数来的对象,整个原型链的this都指向当前对象的值
    8://call, apply, bind的简单区别
    1:三者都可以改变函数体中this的指向
    2:call传递的参数是依次[this,a,b,c]
    3: apply传递是一个数组[this,[array]]
    4: bind调用的方式和call比较像,但是bind返回值是一个新函数(改变了this的新函数),并且不会立即调用,而原函数的this不会改变
    9:基本数据类型与复杂数据类型的区别
    
    复杂数据类型的值是存在堆内存当中,
    地址保存在栈里面,存在一个指向堆内存的地址
    
    基本数据类型的值是存在栈当中
    10 for of ,for in, forEach, map的区别
    
    1:for of
    for...of循环可以使用的范围包括数组、Set 和 Map 结构、某些类似数组的对象、Generator 对象,以及字符串
    for...of结构不能直接使用,会报错,必须部署了 Iterator 接口后才能使用。可以中断循环
    
    2:for in
    遍历对象自身的和继承(重点)的可枚举的属性, 不能直接获取属性值。可以中断循环
    
    3:forEach
    forEach: 只能遍历数组,不能中断,没有返回值
    
    4:map
    map: 只能遍历数组,不能中断,返回值是修改后的数组
    11 let、const 以及 var 的区别是什么
    
    1:let 和 const 定义的变量不会出现变量提升,而 var 定义的变量会提升
    2:let 和 const 是JS中的块级作用域
    3:let 和 const 不允许重复声明
    4:let 和 const 定义的变量必须定义在使用之前 var 不需要
    5:const 声明一个只读的常量。一旦声明,常量的值就不能改变(如果声明是一个对象,那么不能改变的是对象的引用地址)
    不忘初心,不负梦想
  • 相关阅读:
    算法之二叉树各种遍历
    File类基本操作之OutputStream字节输出流
    W3C DOM 事件模型(简述)
    Linux多线程编程小结
    linux下getsockopt和setsockopt具体解释及測试
    MyBatis入门学习(一)
    [ngRepeat:dupes] Duplicates in a repeater are not allowed. Use 'track by' expression to specify uniq
    java中substring的使用方法
    Java Map遍历方式的选择
    E6全部刷机包
  • 原文地址:https://www.cnblogs.com/panrui1994/p/10062514.html
Copyright © 2011-2022 走看看