JS部分面试题和重要知识点汇总(更新中……)(二)

    科技2025-09-07  57

    1.事件类型有哪些?

    鼠标事件:  

    mouseover              mouseout                mouseenter                  mouseleave                         click                    dblclick

    mousedown                  mouseup                          mousemove                     mousewheel                          contextmenu    

    表单事件:

    focus                  blur                         input                         change                           select                         submit                     reset

    页面事件:

    scroll                       load                           resize  

    键盘事件:

    keydown(可以使得按下所有键触发)                    keypress(只有输入键触发)                   keyup

     

    2.阻止冒泡的方法?

                 

        stopPropagetion()

    3.阻止事件默认行为方法?

                   

     preventDefalt()

    4.如何获取元素的宽高?

    mybox.style.width // style行列式的宽高 getComputedStyle // 获取行间样式和样式表属性 mybox.clientWidth // width + padding mybox.offsetWidth // width + padding + border mybox.scrollHeight // Height + padding + 溢出部分

    5.如何获取元素节点的内容?

    text.innerHTML

    6.如何获取表单元素的值?

    input.value

    7.如何获取元素的属性?

    img.src // 元素.属性

    8.如何获取滚动条的滚动距离?

    window.onscroll = function(){ console.log(document.documentElement.scrollTop); }

    9.创建对象的几种方式?

        (1).  对象字面量的方式{}

    let person = { name: '李四', age: 19, gender: '女' }

        (2).    工厂模式(按照模式创建对象)

    function xyj1(pname, pweapon, pgender, pintro) { let obj = {}; obj.name = pname; obj.weapon = pweapon; obj.gender = pgender obj.intro = function() { console.log('我叫' + this.name); } return obj; } let p1 = xyj1('猪八戒','九尺钉耙','男',) let p2 = xyj1('孙悟空','金箍棒','男',)

        (3).    用原型的方式

    //原型可以用来保存相同的方法或属性 function Dog(name,age){ //模拟一个Dog类 this.name=name; //this指向实例化后的对象 this.age=age; //狗的年龄和名字都是属性,静态的 } Dog.prototype.speak=function(){ alert("我是一条名叫"+this.name+"的狗!爱好吃程序员!") } var wangcai= new Dog("旺财","5") //对象实例化 wangcai.speak() //执行方法

        (4).    用new object方式

    var person = new Object(); person.name = "wz"; person.age = 21; person.sex = "male"; person.sayName = function(){ alert("this.name") }

     

     

    Processed: 0.010, SQL: 8