js面试题(二)

简介: js面试题(二)

1. 如何为dom元素添加自定义属性?


setAttribute(“属性名”,“值”);


2. 如何获取当前元素的下一个元素?下一个标签元素?


下一个元素:nextSibling 下一个标签元素:nextElementSibling


3. 如何获取当前元素的所有子元素?所有标签子元素?


所有子元素:childNodes标签子元素:children


4. 如何阻止事件冒泡?


event.stopPropagation()

event.cancelBubble=true;IE10一下可以使用


5. 如何删除dom元素


event.remove();

parentNode.removeChild();


6. 什么是事件冒泡?


由内向外传播遇到外层相同的事件则触发


7. 节点类型有几种?


标签 文本 属性 1 2 3 nodeType


8. 事件委托的核心?


核心就是事件冒泡


9. 标准浏览器事件绑定有哪几种方式?哪种方式能多次绑定?


标签属性onClick=“x()”; dom.οnclick=function(){};

dom.addEvntListener(“click”,function(){}true)

addEvntListener(“click”,function(){})可以多次绑定


10. 元素自身属性和自定义属性在设置和获取上有什么区别?


自身属性:dom.属性=1;

自定义属性:dom.setAttribute(属性名,值)

dom.getAttribite(属性名)


11. 如何在元素的首位添加一个元素?类似数组的unshift


dom.insertBefore(“要插入的内容,插在那个元素前面”)


12. innerHTML与innerText的区别


innerHTML设置和获取内容时包含标签和文本;

innerText设置内容时只包含文本;


13. dom元素所有兄弟元素的获取?


dom.parentNode.children


14. 如何判断数组中是否有大于10的元素?


arr.some(function(v){
return v>10
})


15. 举例说明哪些属于默认行为?如何阻止?


a submit file
return false event.preventDefault()


16. 如何在body尾部动态添加一个id为box的div?

var div = createElement(“div”)
div.id=“box”;
document.body.appendChild(div)


17. 事件委托有哪些优点?


1.后添加的元素也有事件    2.避免大量绑定事件


18. 如何获取元素的宽度?


dom.offsetWidth;dom.clientWidth;。

dom.style.width;

getComputedstyle(dom).width


19. event.pageY和event.clientY区别


clientY以当前窗口为0
  pageY以文档为0


20. offsetLeft与marginLeft和left的区别


left是距离左边框的像素
  offsetLeft是元素定位后距离左边的像素


21. 如何获取dom元素,至少写出5种。


  var del1 = document.getElementById("delBtn");
  var del2 = document.getElementsByClassName("delBtn")[0];
  var del3 = document.getElementsByTagName("button")[0];
  var del4 = document.getElementsByName("del")[0];
  var del5 = document.querySelector("#delBtn");
  var del6 = document.querySelectorAll(".delBtn")[0];


22. onmouseenter和onmouseover的区别?


onmouseover事件冒泡,发生在父元素和子元素切换
  onmouseenter在父子元素之间切换不重复触发


23. 什么是事件冒泡?标准浏览器下如何阻止事件冒泡?


从内到外依次传播遇到外层相同事件则触发是事件冒泡;
  stopPropagation();


24. 模拟点击dom.click()和dom.onclick()区别?


onclick是绑定事件,告诉浏览器在鼠标点击时候要做什么。
  click本身是方法作用是触发onclick事件,只要执行了元素的click(),就会触发onclick事件


25. 百度 ①获取a标签的宽度、高度、文字颜色 ②获取a标签上的num属性和href属性; ③点击a标签不跳转至百度首页 ④为a标签增加一个值为20的count属性; ⑤为a标签增加一个值为”去百度”的title属性;


  1.baidu.offsetWidth;
  baidu.offsetHeight;
  getComputedStyle(baidu).color
  2.baidu.getAttribute("num")
  baidu.href
  3.renturn flass
  4.baidu.setAttribute("count",20)
  5.baidu.title="去百度"


相关文章
|
3月前
|
JSON JavaScript 前端开发
Javascript基础 86个面试题汇总 (附答案)
该文章汇总了JavaScript的基础面试题及其答案,涵盖了JavaScript的核心概念、特性以及常见的面试问题。
63 3
|
3月前
|
前端开发 JavaScript
JavaScript 面试系列:如何理解 ES6 中 Generator ?常用使用场景有哪些?
JavaScript 面试系列:如何理解 ES6 中 Generator ?常用使用场景有哪些?
|
4月前
|
JavaScript 前端开发
常见的JS面试题
【8月更文挑战第5天】 常见的JS面试题
67 3
|
1月前
|
JSON JavaScript 前端开发
[JS]面试官:你的简历上写着熟悉jsonp,那你说说它的底层逻辑是怎样的?
本文介绍了JSONP的工作原理及其在解决跨域请求中的应用。首先解释了同源策略的概念,然后通过多个示例详细阐述了JSONP如何通过动态解释服务端返回的JavaScript脚本来实现跨域数据交互。文章还探讨了使用jQuery的`$.ajax`方法封装JSONP请求的方式,并提供了具体的代码示例。最后,通过一个更复杂的示例展示了如何处理JSON格式的响应数据。
37 2
[JS]面试官:你的简历上写着熟悉jsonp,那你说说它的底层逻辑是怎样的?
|
2月前
|
Web App开发 JavaScript 前端开发
前端Node.js面试题
前端Node.js面试题
|
4月前
|
存储 JavaScript 前端开发
2022年前端js面试题
2022年前端js面试题
47 0
|
4月前
|
JavaScript 前端开发 程序员
JS小白请看!一招让你的面试成功率大大提高——规范代码
JS小白请看!一招让你的面试成功率大大提高——规范代码
|
4月前
|
JavaScript 前端开发 UED
小白请看! 大厂面试题 :如何用JS实现瀑布流
小白请看! 大厂面试题 :如何用JS实现瀑布流
|
4月前
|
存储 JavaScript 前端开发
JS浅拷贝及面试时手写源码
JS浅拷贝及面试时手写源码
|
4月前
|
JavaScript 前端开发
JS:类型转换(四)从底层逻辑让你搞懂经典面试问题 [ ] == ![ ] ?
JS:类型转换(四)从底层逻辑让你搞懂经典面试问题 [ ] == ![ ] ?