当前位置: 首页 > news >正文

面试遇到的问题

1、js里面的继承函数

        a、原型链继承

                通过将子构造函数的原型对象指向父构造函数的实例,实现了继承

        b、构造函数继承

                通过在子构造函数中调用父构造函数来实现继承

        c、组合继承

                结合了原型链继承和构造函数继承,既继承了父构造函数的属性,又继承了父构造函数原型对象上的方法

        d、原型式继承

                原型式继承是通过使用一个临时构造函数和**Object.create()**方法来实现继承。本质是创建一个新对象,将其原型对象指向另一个已有的对象。这种方式可以实现属性和方法的继承,但是不能传递构造函数的参数。

        e、Object.create()

                Object.create() 是把现有对象的属性,挂到新建对象的原型上,新建对象为空对象.

        f、寄生式继承

        j、寄生组合式继承

        h、ES6类继承

                在ES6中引入了类的概念,通过class关键字和extends关键字可以实现类的继承。

2、匿名函数

        匿名函数主要有两种常用的场景,一是回调函数,二是直接执行函数。

(function(){console.log('自执行的匿名函数');
})();(functon(){console.log("自执行函数");
}());

        

var double = function(x){return 2 * x;
}

3、前端安全性问题

        a、跨站脚本攻击(XSS): 通过在网页中注入恶意脚本,窃取用户的敏感信息或操纵网页内容。解决办法:

aa) 不直接显示用户输入,使用DOMText 文本的显示用户输入,可有效过滤恶意程序;

bb)  对输入的特殊字符 转译为html的实体,可以简单的防止XSS攻击

function escapeHTML(str) {var map = {'&': '&amp;','<': '&lt;','>': '&gt;','"': '&quot;',"'": '&#039;'};return str.replace(/[&<>"']/g, function(m) { return map[m]; });
}// 使用方法
var safeString = escapeHTML('<script>alert("XSS")</script>');
console.log(safeString); // 输出:&lt;script&gt;alert("XSS")&lt;/script&gt;

 cc) js-xss 库:在不改变原有HTML结构的情况下,安全地对用户输入进行清洗和转义,以防止潜在的XSS攻击;

dd) ‌使用HTTP-only和Secure属性‌:设置Cookie的HTTP-only属性,防止JavaScript访问Cookie;使用Secure属性,确保Cookie只在HTTPS连接中传输‌

        b、跨站请求伪造(CSRF): 攻击利用用户的登录状态,冒充用户发起请求,执行未授权的操作。

        c、点击劫持:通过透明层覆盖合法网站,诱导用户点击,执行恶意操作。

        d、本地存储数据泄露:敏感信息存储在前端,面临泄露风险。


http://www.mrgr.cn/news/63251.html

相关文章:

  • 漏洞分析技术实践_数组越界漏洞
  • React + SpreadJS 开发时常见问题
  • Pytest-Bdd-Playwright 系列教程(6):在测试步骤函数中设置别名数据共享
  • LeetCode 热题 100 回顾37
  • C++核心编程和桌面应用开发 第十七天(set和multiset容器 pair map和multimap容器)
  • 选项卡设计与实现
  • 【笔记】KV-cache
  • 如何实现PLC系统时钟显示在HMI上?
  • 地下隧道、管廊非接触式二维位移监测裂纹、衬砌、支护结构损伤识别、隧道病害诊断等问题解决方式——变焦视觉位移监测仪
  • C++初阶(八)--初识模板
  • 制作一个简易恒流电子负载教程,实战教程,单片机程序,电路图,方案
  • 基于字符的图片验证码识别算法的设计与实现
  • springcloud通过MDC实现分布式链路追踪
  • 九识智能与徐工汽车达成战略合作,共绘商用车未来新蓝图
  • SAP ABAP开发学习——BADI增强操作步骤示例2
  • 在阿里云快速启动Umami玩转网页分析
  • 一位专科生面上网络安全的经验总结_网络安全专科
  • 视频批量裁剪工具
  • 探索智能投顾:正大金融数据分析如何优化市场策略
  • 【自动化测试】APP UI 自动化(安卓手机)-本地环境搭建
  • SSID,即Service Set Identifier(服务设置的表示符号)
  • CBAM填报攻略:关键点解析与实操案例分享
  • 台式电脑如何改ip地址:全面解析与实操指南
  • 成功解决:notepad++搜索结果窗口不见了,怎么找回?
  • 【无人机设计与控制】四旋翼无人机飞行姿态(ADRC)自抗扰控制Matlab仿真
  • msys2更换国内源(多个文件(不是3个文件的版本!))