Python核心编程:探索prototype关键字

需积分: 41 113 下载量 161 浏览量 更新于2024-08-07 收藏 2.32MB PDF 举报
"使用prototype关键字-python 核心编程(第3版)" 虽然标题提及的是Python中的`prototype`关键字,但实际描述中并没有提供与Python相关的具体信息,而是提到了JavaScript中的对象原型。在JavaScript中,`prototype`是用于实现继承的关键机制。下面将围绕JavaScript的`prototype`以及与其相关的前端面试知识点进行详细阐述。 1. **JavaScript中的prototype** - `prototype`是JavaScript中函数(或构造函数)的一个属性,用于定义实例对象的共享属性和方法。 - 当创建一个新的对象时,该对象会自动获取其构造函数的`prototype`对象作为其`__proto__`属性。 - 通过`obj.prototype`可以添加或修改构造函数实例的共有属性和方法。 2. **原型链** - JavaScript的对象可以通过原型链共享属性和方法。原型链是由原型对象形成的链状结构,通过`__proto__`属性连接。 - 当试图访问一个对象的属性时,如果该属性不存在,JavaScript会向上搜索原型链,直到找到该属性或者到达链的顶端(即`null`)。 3. **面试宝典中的前端知识点** - **HTML和CSS** - Doctype声明:用于告知浏览器文档应按哪种HTML版本解析。 - Quirks模式与Standards模式:Quirks模式遵循早期浏览器的非标准行为,而Standards模式遵循W3C标准。 - div+css布局优于table布局:div+css更灵活,易于维护,有利于SEO。 - img的alt和title:alt是替代文本,当图像不可见时显示;title是提示信息,鼠标悬停时显示。 - strong和em:strong强调文本,em表示重要性。 - **网页性能优化** - 多域名存储资源:减少浏览器并发限制,提高加载速度。 - 图片优化:延迟加载、合并图片为雪碧图、使用WebP等高效格式。 - **前端标准** - 网页标准重要性:确保跨浏览器兼容性,提高可访问性和可维护性。 - **Web存储** - cookies, sessionStorage, localStorage:cookies有大小限制且每次请求都会发送;sessionStorage只存在于会话期间;localStorage长期存储,不受会话限制。 - **其他** - src与href:src用于加载外部资源,href用于链接页面或资源。 - CSS选择器:包括标签选择器、类选择器、ID选择器、属性选择器等。 - 隐藏DOM元素:display:none; visibility:hidden; 两者区别在于是否占用空间。 - CSS Hack:针对不同IE版本的样式问题,如`_margin`、`*margin`等。 - 行内元素与块级元素:行内元素不独占一行,块级元素独占一行;行内元素的padding和margin有限制。 - 垂直居中:可以使用Flexbox、Grid布局,或古老方法如定位、绝对定位等实现。 - px与em:px是固定单位,em是相对单位,基于父元素字体大小。 - reset CSS:清除浏览器默认样式,如`*{margin:0;padding:0}`;normalize.css更规范化,保留部分合理默认样式。 以上内容涵盖了前端开发中的一些基础和进阶知识点,包括HTML、CSS、JavaScript、性能优化以及浏览器兼容性等,这些都是面试中常见的问题。