js 面试题(2)

PD虚拟机安装CentOS7后必做的Parallels Tools配置指南(附常见错误解决) 本文详细指导在Mac的Parallels Desktop虚拟机中安装CentOS 7后如何高效配置Parallels Tools,包括环境准备、镜像挂载、依赖问题解决及性能优化。特别针对常见错误如挂载失败、依赖缺失等提供实用解决方案,帮助用户实现主机与虚拟机间的无缝交互和显示优化。 阅读详情

一。函数表达式相关知识:

(1)闭包:是指有权访问另一个 函数作用域中的变量的函数。

(2)this指针:this 对象是在运行时基于函数的执行环境绑定的;在全局函数中,this 等于 window,而当函数被作为某个对象的方法调用时,this 等于那个对象。不过,匿名函数的执行环境具有全局性,因此其 this 对象通常指向 window。其次具体的this指向取决于代码。

二。BOM

(1)window:全局作用域。

(2)窗口和框架:window.name 代表框架的名称。top 代表框架的最上层、parent 代表框架的上一层。每个框架之间的window对象互相独立。

(3)window api:

  1.  open(url, name):url:新窗口地址,name:窗口的名称或打开窗口的方式。_blank:URL加载到一个新的窗口。这是默认,_parent: URL加载到父框架,_self: URL替换当前页面,_top:URL替换任何可加载的框架集,name: 窗口名称。
  2. setTimeout()、setInterval()、clearTimeout()、clearInterval():分别为延时器、定时器、清除延时器、清除定时器。
  3. alert()、confirm()和 prompt():提示框、确认框、可输入提示框。

(4)location 对象:(例子:window.location.href => 'https://blog.youkuaiyun.com/github_38186390/article/details/95940705')

  • hash "#contents" 返回URL中的hash(#号后跟零或多个字符),如果URL 中不包含散列,则返回空字符串
  • host "www.wrox.com:80" 返回服务器名称和端口号(如果有)
  • hostname "www.wrox.com" 返回不带端口号的服务器名称
  • href "http:/www.wrox.com" 返回当前加载页面的完整URL。而location对象的 toString()方法也返回这个值
  • pathname "/WileyCDA/" 返回URL中的目录和(或)文件名
  • port "8080" 返回URL中指定的端口号。如果URL中不包含端口号,则 这个属性返回空字符串
  • protocol "http:" 返回页面使用的协议。通常是http:或https:
  • search "?q=javascript" 返回URL的查询字符串。这个字符串以问号开头

   常用操作:window.location.href = '链接' 用于跳转到指定链接。window.location.reload() 刷新当前页面。

(5)history 对象:

  • go(n):n 为正数则前进 n 页,负数则后退 n 页。
  • back()、forward():后退一页、前进一页。

三。DOM 操作

(1)元素操作:

  • replaceWith(替换该父节点下的子节点, 浏览器支持:Chrome:54 firefox:49,ie 不支持)参考链接
  • remove(删除指定节点,浏览器支持:Chrome:23 firefox:23,ie 不支持)参考链接
  • closest(查找当前元素的祖先元素, 浏览器支持:Chrome:41 firefox:35,ie 不支持)参考链接
  • matches(同matchesSelector)

(2)子节点操作:

  • appendChild(新增节点)
  • insertBefore(插入在什么节点之前。)
  • replaceChild(替换指定节点)
  • removeChild(删除指定子节点)
  • cloneNode(Boolean)(克隆节点,true 深克隆
  • normalize(文本节点处理)。

(3)查找元素:

  • getElementById(id):根据 id 获取元素。
  • getElementsByTagName(tagName):根据标签名返回一个元素的集合(也就是一个数组)。
  • getElementsByName(name):根据元素 name 属性返回一个元素的集合。
  • querySelector():根据css选择符,返回匹配元素的第一个元素。
  • querySelectorAll():根据css选择符,返回所有匹配的元素(数组)。
  • matchesSelector():验证元素是否能被querySelector或者querySelectorAll 返回。
  • getElementsByClassName():通过类名查找元素,返回所有匹配的元素集合(数组)

(4)创建元素:

  • createElement(): 标签名或者是完整的节点元素。
  • createTextNode():创建文本节点。
  • createDocumentFragment():创建文档片段。
  • createAttribute():创建属性节点。用setAttribute api 添加进去。
  • insertAdjacentHTML(type, dom):type可选值:
  1. "beforebegin",在当前元素之前插入一个紧邻的同辈元素;
  2.  "afterbegin",在当前元素之下插入一个新的子元素或在第一个子元素之前再插入新的子元素;
  3. "beforeend",在当前元素之下插入一个新的子元素或在最后一个子元素之后再插入新的子元素;
  4. "afterend",在当前元素之后插入一个紧邻的同辈元素。

(5)Element类型:元素的属性

  • getAttribute(属性名):获取对应的属性值。
  • setAttribute(属性名, 属性值):设置对应的属性值。
  • removeAttribute(属性名):删除对应的属性。

(6)classList属性用于操作类。

  • classList.add(class):添加一个类。
  • classList.contains(class):判断是否存在该类,存在返回true。
  • classList.remove(class):删除一个类。
  • classList.toggle(class):如果列表中已经存在给定的值,删除它;如果列表中没有给定的值,添加它。

(7)属性操作:

  • innerHTML:用于插入元素节点或者文本节点。
  • outerHTML:用于替换当前元素节点。
  • innerText:用于插入文本。
  • outerText:用于替换当前元素文本。

(8)样式相关APi

  • getComputedStyle(dom元素):返回元素的样式,IE不支持,可通过currentStyle返回。
  • getBoundingClientRect():返回left、top、right 和 bottom的值。
  • insertRule():添加一条css样式。慎用
  • deleteRule():删除规则。慎用

四。事件。

(1)addEventListener()、removeEventListener():添加监听事情和删除监听事件,三个参数,第一个为事情名,第二个为处理函数,第三个为是在捕获阶段(true)或冒泡阶段(false)调用事件处理程序。最好是在冒泡阶段。删除监听事件的三个参数必须与添加的相同才能进行删除。IE使用attachEvent()和 detachEvent()代替只有前两个参数。第一个参数值的区别是attachEvent前面需要加on 例如(attachEvent('onclick', function () {}) addEventListener('click', function () {}))。

(2)事情常用event 属性:

  • event.preventDefault():取消事件的默认行为。
  • event.stopPropagation():取消事件的进一步捕获或冒泡。
  • event.target:事件的目标。
  • event.type:触发的类型。
  • event.offsetX、event.offsetY:相对元素的偏移量。例如:元素width:40px;height:40px;那右下角的偏移量值就是offsetX = 40,offsetY = 40.
  • event.clientX、event.clientY:事件相对于视口(也就是可视化区的左上角)的值,到点击的值。不管滚动。
  • event.pageX、event.pageY:相当于文档(页面)的值到点击的值。没有滚动时 event.pageX == event.clientX 的值。

五。如果让一个div 像 textarea 成为可编辑的(contenteditable)。通过给div设置contenteditable="true" 就可以让div成为可编辑的元素。

系列文章:js 面试题(1)

 

 

 

 

 

C#上位机实战:PLC与检测设备无缝对接,构建产品质量实时判定系统 本文分享了基于C#开发的汽车零部件质量检测系统实现经验。系统采用三层架构:设备层(PLC/视觉相机/三坐标)、通信层(OPC UA/SDK/串口)和应用层(数据采集/判定/存储)。重点解决了三大技术难点:1)通过OPC UA订阅模式将PLC通信延迟从500ms降至50ms;2)反编译厂商Demo破解视觉SDK对接难题;3)采用时间戳+产品ID实现多设备数据同步。系统上线后质检人员减少67%,误判率降至0.5%,数据追溯效率显著提升。文章强调工业场景下稳定性优先于技术复杂度,实用经验值得借鉴。 阅读详情

相关推荐

【ANSYS APDL】提取结构刚度矩阵完整过程--附Python代码实现

ANSYS的结构刚度矩阵提取中一些操作技巧

m0_61038364的博客 1万+

2020-12-09

Centos7.6Error: Connection activation failed: No suitable device found for this connection. 一 、尝试解决方法一,配置文件添加mac地址 UUID。未解决 操作系统日志: 二 、尝试使用第二个解决方法,解决! 参考blog :http://bbs.cqsztech.com/forum.php?mod=viewthread&tid=26183 ...

怀念小伟哥的博客 312

西门子 S7-200 SMART 系列六:手把手教你配置S7-200 SMART Modbus RTU

Modbus 是公开通信协议,其最简单的串行通信部分仅规定了在串行线路的基本数据传输格式。Modbus 具有两种串行传输模式,ASCII 和 RTU,它们定义了数据如何打包、解码的不同方式。支持 Modbus 协议的设备一般都支持 RTU 格式。

John_09040211的博客 7432

jsplumb - Cannot establish connection - source does not exist

可能的原因有几个: source 或者 target 的元素 id 不存在 id 是中文

Charonmomo的博客 2352

泛微ecology9二次开发-附件上传-安全实践

本文深入探讨了泛微ecology9二次开发中附件上传功能的安全实践。针对原生接口的安全机制,文章提出了同源部署与服务端代理转发两大核心策略,并提供了基于Vue3和Element Plus的完整前端实现代码,重点解决了会话验证、权限控制及文件关联等关键安全问题,确保二次开发应用能安全、稳定地与ecology9系统集成。

qsc9012345的博客 535

jmeter问题系列:Begin size 0 is not equal to fixed size 5

Begin size 0 is not equal to fixed size 5 ,问题的解决

雨水的早晨的博客 2415

Chrome扩展程序:端口错误:无法建立连接接收端不存在

dituirenwu的博客 1410

基于光电传感的非接触式酒精浓度检测系统设计与实现

本文详细介绍了基于光电传感技术的非接触式酒精浓度检测系统设计与实现。系统利用940nm红外LED和OPT101光电传感器,结合朗伯-比尔定律,通过STM32微控制器进行信号采集与处理,实现了快速、准确的酒精浓度测量,测量精度达±1%,适用于工业检测和便携式应用场景。

y7z8a的博客 365

jsPlumb的学习使用(一):引入项目和基础示例

jsplumb是一个可以用来实现可视化功能的前端应用库,如果在开发过程中遇到需要实现一些流程图、拓扑图或者是导力图等可视化的功能,就可以使用jsplumb这个库来实现.在文章中,我就不将api具体的每一个参数都罗列出来了,具体每一个配置的参数集文档中都有.我主要是解释一下这些api的作用。

m0_54741495的博客 2317

KEPServerEX物联网网关(IoT Gateway)REST客户端代理(非原创)

(中文版)资料来源于【OPC-KEPServerEX学习KEPWare交流】905485143群的【455196383】【零下一度】 一。KEPServerEX物联网网关REST客户端代理演示 在KSE中,首先构建一个带有通道/设备/标签的模拟器系统。 例如,下面是三个随机项目。 直接到IoT网关插件,添加新代理。 从类型列表中选择REST Client。 终结点...

-雲飛兄-博客 5809

【动态导通电阻】GaN HEMT动态导通电阻的精确测量

2023年7月,瑞士洛桑联邦理工学院的Hongkeng Zhu和Elison Matioli在《IEEE Transactions on Power Electronics》期刊发表文章,提出了一种稳态测量方法,用于研究氮化镓(GaN)高电子迁移率晶体管(HEMT)的动态导通电阻(Ron)。实验结果显示,商业GaN器件在稳态下的动态Ron变化显著,稳定时间可达数分钟且与电压相关。传统的脉冲测量方法由于测试时间不足,可能导致结果不准确。该

荷塘阅色 1379

使用jsplumb时遇到的一些问题及处理办法

最近在使用jsplumb做了一个流程图绘制的实现,因为本身不是搞前端出身,布局有点丑,不过大致达到了自己想要的功能效果,具体效果如下: 期间遇到一些问题和自己想要的一些效果,现在记录下来和大家分享一下: 1、监听画图区域组件的拖拽事件,以获取组件的位置,注册stop方法,从event中获取组件ID,从ui获取事件的位置 jsPlumb.draggable(id, { ...

Luxy_wang的博客 1万+

基于OpenCV实现暗通道先验去雾算法及改进,效果惊人

深度技术文,前方高能

公号:一条coding 2万+

Js篇-面试题2-Promise 执行顺序问题

虽互不曾谋面,但希望能和您成为笔尖下的朋友以读书,技术,生活为主,偶尔撒点鸡汤不作,不敷衍,意在真诚吐露,用心分享点击左上方,可关注本刊标星公众号(ID:itclanCoder)如果不知...

itclanCoder 2659

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【面试题】 JavaScript 中 call()、apply()、bind() 的用法_js apply call面试题(2)

call()方法使用一个指定的this值和单独给出的一个或多个参数来调用一个函数。

2401_84435942的博客 232

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【前端八股文面试题】【JavaScript篇2】说说你了解的js数据结构?

JavaScript提供了丰富的数据结构来组织和操作数据。核心数据结构包括数组(Array)和对象(Object),数组用于有序元素集合,对象用于键值对存储。ES6引入了Map(键值对,键可为任意类型)、Set(唯一值集合)、WeakMap/WeakSet(弱引用版本)。此外还有原始值、TypedArray(二进制数据)、JSON等。选择数据结构需根据具体需求:数组适合有序列表,Map适合任意键类型,Set适合去重,WeakMap适合对象元数据存储。合理选择数据结构能提升代码效率与可维护性。

qq_45974648的博客 618

js面试题2

如何让chrome支持小于12px的文字? <style> p span{ font-size:10px; -webkit-transform:scale(0.8); display:block; } </style> <p><span>haorooms博客测试10px</span></p> ...

Fengwu9166的博客 436

js面试题:fn.call.call.call.call(fn2) 解析

有这样一道 JS面试题,问 fn.call.call.call.call(fn2) 的结果是什么? 先说下 call 函数的内部原理: 可以改变函数的this; 执行函数 下面模拟下 原生的call函数: Function.prototype.call = function(context, ...args){ context = context? Object(context) : window; // 改变 this context.fn = this; // 执行函数 return

xufang461010923的专栏 1770

JS面试题:实现a==1&&a==2&&a==3 返回true

JS面试题:实现a1&&a2&&a==3 返回true 思路: 重写valueOf()方法 利用隐式转换时,会调用valueOf()方法,来实现对其值的++操作 valueOf的意思是返回最适合该对象类型的原始值,而toString则是将在该对象类型的原始值以字符串形式返回。 var colors = ["red", "blue", "green"]; // 创建一个包含3 个字符串的数组 alert(colors.toString()); // red,

weixin_45664402的博客 583

2024年Web前端最新【面试题】JavaScript中递归的理解_js面试题 递归(2),2024年最新阿里大厂面试指南

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】在中国 帕斯卡三角 叫杨辉三角,因为在中国 杨辉三角 的记录比欧洲 帕斯卡三角记录早了几百年。面试前要精心做好准备,简历上写的知识点和原理都需要准备好,项目上多想想难点和亮点,这是面试时能和别人不一样的地方。还有就是表现出自己的谦虚好学,以及对于未来持续进阶的规划,企业招人更偏爱稳定的人。万事开头难,但是程序员这一条路坚持几年后发展空间还是非常大的,一切重在坚持。

2401_84447149的博客 618

JS面试题总结2

js面试题总结

weixin_60323200的博客 623

JavaScript面试题2

原因说明避免 DOM 冲突多线程同时操作同一个 DOM 节点,浏览器不知道该听谁的简化设计单线程不用考虑锁、死锁、线程同步等复杂问题历史沿革最初只是表单验证脚本,没必要用多线程死锁(Deadlock)是指两个或多个进程在执行过程中,因争夺资源而造成的一种互相等待的现象产生死锁需要四个条件:互斥、持有并等待、不可剥夺、循环等待闭包就是一个函数以及它所声明时所处的环境(词法环境)的组合函数嵌套:在一个函数内部定义另一个函数引用外部变量:内部函数引用了外部函数的变量// 外部函数的局部变量。

2301_79842467的博客 484

javascript面试题(2)

判断 js 类型的方式 ES5 和 ES6 分别几种方式声明变量 闭包的概念?优缺点? 浅拷贝和深拷贝 数组去重的方法 DOM 事件有哪些阶段?谈谈对事件代理的理解 js 执行机制、事件循环 介绍下 promise.all async 和 await ES6 的 class 和构造函数的区别 transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式 介绍一下rAF(requestAnimationFrame) javascript 的

突维 202

JS面试题2

整理了一些常问的JS面试题,包含对应的参考答案,需要面试及跳槽的小伙伴来说可以作为自己的JS题库,方便随时备战~

2301_78675670的博客 1368

2_JavaScript面试题

JS面试题,持续更新ing

linxwx的博客 506
上一篇: js 引用类型、常用函数
下一篇: html5 canvas API
黄祚敏
博客等级 码龄10年 22粉丝 89原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值