知识点汇总

GESP C++ 各等级详细知识点汇总 函数声明与定义- 实参与形参,参数作用域- 参数传递方式:值传递、引用传递( 阅读详情

什么是CSS Hack
一般来说是针对不同的浏览器写不同的CSS,就是 CSS Hack。
IE浏览器Hack一般又分为三种,条件Hack、属性级Hack、选择符Hack。例如:
1. 条件Hack

<!--[if IE]>
<style>
.test{color:red;}
</style>
<![endif]-->
  1. 属性Hack
.test{
color:#090\9; / For IE8+ /
color:#f00; / For IE7 and earlier /
_color:#ff0; / For IE6 and earlier */
}
  1. 选择符Hack
html .test{color:#090;} / For IE6 and earlier /
html .test{color:#ff0;} / For IE7 /

什么叫优雅降级和渐进增强
渐进增强 :
针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。
优雅降级:
一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。
区别:

1. 优雅降级是从复杂的现状开始,并试图减少用户体验的供给
2. 渐进增强则是从一个非常基础的,能够起作用的版本开始,并不断扩充,以适应未来环境的需要
3. 降级(功能衰减)意味着往回看;而渐进增强则意味着朝前看,同时保证其根基处于安全地带

实现一个函数clone,可以对JavaScript中的主要的数据类型进行值复制

function clone(obj) { 
    var o; 
    switch (typeof obj) { 
        case "undefined": 
            break; 
        case "string": 
            o = obj + ""; 
            break; 
        case "number": 
            o = obj - 0; 
        case "boolean": 
            o = obj; 
            break; 
        case "object": // object 分为两种情况 对象(Object)或数组(Array) 
            if (obj === null) { 
                o = null; 
            } else { 
                if (Object.prototype.toString.call(obj).slice(8, -1) === "Array") { 
                    o = []; 
                    for (var i = 0; i < obj.length; i++) { 
                        o.push(clone(obj[i])); 
                    } 
                } else {
                    o = {}; 
                    for (var k in obj) { 
                        o[k] = clone(obj[k]); 
                    } 
                } 
            } 
            break; 
        default: 
            o = obj; 
            break; 
        } 
        return o; 
    }

cookie和session的机制是什么?有什么区别?

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话,它可以弥补http协议无状态的不足。常用的会话跟踪技术是cookie与session。cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份。
cookie有什么作用?

cookie可以解决http的无状态的问题,与服务器进行交互,作为http规范存在。它具有极高的简便性、可扩展性和可用性,也可以通过加密和SSL技术来提高其安全性。因此推荐使用cookie作为标识而不是身份验证的工具。
cookie的缺点

 1. 大小和数目受限制。浏览器对一个域cookie的条目数有上限要求,且每个cookie的大小不得超过4kb。
 2. 存在安全性问题,易被人拦截。
 3. 需要指定域,不可以跨域
 4. 浪费带宽,因为我每次请求一个新的页面,cookie都会被自动发送过去。
 5. 有的移动端浏览器不支持cookie或浏览器禁用cookie
 6. 有些状态不可能保存在客户端。例如,为了防止重复提交表单,我们需要在服务器端保存一个计数器。如果我们把这个计数器保存在客户端,那么它起不到任何作用

什么是重排和重绘?什么时候会发生重绘?如何避免重绘?
重绘是指的屏幕的一部分要重新绘制,比如元素的背景色发生了改变,但几何尺寸未发生改变。重排意味着元素的几何尺寸发生了改变,需要重新计算生成渲染树。
下面几种情况会发生重排:

 1. resize窗口时
 2. 修改网页默认字体时
 3. 修改CSS样式改变尺寸时
 4. JS操作dom树
 5. 一些影响布局的动画
 6. 使用JS脚本获得一些布局属性时,比如offsetTop

可以采取以下方法来减少重排:

 1. 不要一条条的修改DOM样式,改变className来“统一修改”(注:现代浏览器会进行增量异步reflow,即“攒够”一些修改后再统一修改)
 2. 把dom离线修改,比如将其至于内存或设置display:none。
 3. 为html动画原件使用position:absolute布局或fixed布局,这样不会引起重排和重绘。
 4. 不要使用table布局,因为稍加改动就会导致table的重新布局。
 5. 将offsetTop等属性缓存成局部变量

浏览器是如何渲染页面的?

 1. 浏览器会解析html\xhtml\svg,生成一个dom树,解析css文件生成css规则树,解析javascript以获得其对html和css的影响
 2. 解析完成后,浏览器会根据dom树和css规则树来生成渲染树。渲染树不包括像header元素这样页面中不会出现的元素。
 3. 会进行layout,定义元素的坐标
 4. 最后通过调用系统Native GUI的API绘制

网页中如何优化图像

  1. 去掉没有意义的修饰
  2. 使用css和矢量图代替位图
  3. 惰性加载图片
  4. 使用css sprites,将多张小图拼成一张大图

png和jpg格式的区别
png属于无损压缩,而jpg是有损压缩,一张图片多次使用jpg格式压缩的话会逐渐失真
png格式的图片存储空间明显大于jpg格式的图片

常见web攻击有哪些

  1. 跨站脚本攻击(XSS ,又称CSS,Cross Site Script)
  2. 分布式拒绝服务(DDOS,Distributed Denial of Service)
    利用合理的请求占用服务器的大量资源,使正常用户无法得到服务器的响应
  3. 跨站请求伪造攻击(CSRF,Cross site request forgery)
    攻击者通过各种方法伪造一个请求,模仿用户提交表单的行为,从而达到修改用户的数据,或者执行特定任务的目的
    解决方法是尽量使用post请求
  4. sql注入
    攻击者主要针对后台使用sql拼接方式查询的情况,
C++面试知识点汇总 本博文是本文历时3个月,收集各种资料,汇总的C++面试题,欢迎各位博友评价。 阅读详情

相关推荐

软件测试知识点汇总

软件测试知识点汇总 软件测试理论 1. 什么是软件测试? 答:软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。 2. 软件测试的目的? 答;测试的目的是想以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正错误和缺陷提高软件质...

Coding 5810

Ruby 关键知识点总结

Ruby 关键知识点总结 概论 分号, 换行符为语句结束; + - \ 表示语句后续 ‘’#’’ 单行注释 , =begin … =end 多行注释 有IRb 控制台程序, 逐行执行, 命令行输入irb即可, 使用irb --simple-prompt 让结果更易读, exit 退出 脚本编程(.rb文件), 使用解释器ruby 来运行 puts 输出数组【1,2,3】 会分成三行输出, 方法 方法名需要小写开头(大写开头会看作常量), 方法要找调用之前定义 局部变量: 小写字母/ 下划

yanyue171的博客 510

【天线与电波传播】电波传播部分 第7章 电波传播的基础知识3

菲涅尔区与菲涅尔带的基本知识

Chen59_2328的博客 1602

ruby知识点

1.变量 局部变量:只在局部代码区域内出现,只存在于他们原始的作用域 全局变量:变量名前加$ 对象变量:变量名前加@,作用域内置于、关联于当前对象 类变量:变量名前加@@,作用域处于整个类 2. ...

qq_42922647的博客 500

二、租用AutoDL服务器与连接教程

点击右上角控制台,选择【租用新的实例】;,我这里使用的是xshell和xftp工具(自行下载)。打开本地目录和服务器目录,直接拖动文件。

zzf021122的博客 1329

Android:Google三方库之Adjust集成详细步骤

Android为APP添加google adjust功能

学习就是我的个性 4477

Ruby 的相关知识点

Ruby 常用知识点

Majson的博客 477

FPGA 核脉冲梯形成型 Verilog 实现:从 MATLAB 到 50MHz 采样率部署

本文详细解析了FPGA实现核脉冲梯形成型的完整流程,从MATLAB仿真到50MHz采样率的Verilog硬件部署。重点探讨了梯形成型算法对负指数信号的优化处理,包括定点数量化、流水线架构设计及资源优化技巧,为核辐射探测与高能物理实验提供高效解决方案。

weixin_30920513的博客 392

化工原理各章知识点汇总

赶紧背吧,这年头太痛苦了 我太难了

微信号:RunsenLiu 3178

微信小程序消息推送全攻略:从模板消息到订阅消息的实战避坑指南

本文深入解析微信小程序消息推送机制,对比模板消息、订阅消息与客服消息的核心差异与适用场景。重点提供订阅消息从用户授权设计、前端代码实现到后端稳定发送的完整实战指南,并分享提升消息点击率的文案与运营技巧,帮助开发者构建高效、用户友好的消息推送体系。

b3n4m5q6w7的博客 339

一文速学数模-K-means聚类算法实战:信用卡用户画像聚类分析

该项目算是非常经典的金融业务用户画像的基础分析了,主要根据用户信用卡使用行为数据进行分析,根据收集到的不同字段信息,对每个用户划分类别。这里需要说明一下的是,聚类模型只是将具有相似行为的大部分用户聚集到一个类别里面,这点并不会考虑到每个字段的含义,也就是分成的类别并不是用户价值等级,此类别仅仅是这个类别大体相同的信用卡用户行为对象,并不能给每个用户价值打上标签,那是评价模型做的事,这里要注意不要搞混淆了,用户价值评价是评价模型决定的,而画像是聚类模型分析的。

master_hunter的博客 1万+

知识点汇总流程图

上学时每一章的内容总是特别多,一章内容学完之后记得的内容没有多少。老师就要求我们制作知识点流程图将知识点汇总起来,方便之后记忆。那要怎样操作呢?小编给大家分享一个操作方法,给大家分享一个知识点汇总流程图模板,以及怎样利用在线网站编辑流程图的操作方法。 1.小编的模板在迅捷流程图在线制...

chuchan6591的博客 418

第10章《VTK自定义部件Widget》

是用于交互式操作 3D 场景的组件,例如移动对象、调整尺寸、创建标注等。VTK 提供了一些内置的 Widget,如。,用户可以点击鼠标,在 3D 场景中放置一个点。负责绘制一个点,并控制其颜色、大小等。,可用于 3D 标注、对象拾取等应用!等,但在某些应用中,我们需要。这样,我们就创建了一个。

yumeiguo的博客 523

2016 知识点汇总 mindmap

2016年知识点汇总这一年所有涉及的知识的总结,后续会有相应的文章来做详细说明。

llccing的专栏 480

基于Simulink的电机功率因数校正仿真

PF=SP​=视在功率有功功率​=cosϕ⋅Irms​I1​​(非正弦时)位移因数(cosϕ):基波电压电流相位差畸变因数(I1​/Irms​):谐波导致电流有效值增大本文带你完成了电机系统功率因数校正的Simulink仿真,实现了:✅ 理解了低功率因数的成因与危害✅ 搭建了无PFC、无源PFC、有源PFC三种对比模型✅ 掌握了Vienna整流器建模与dq解耦控制方法✅ 实现了PF与THD的自动计算与评估✅ 验证了有源PFC在PF、THD、稳定性上的全面优势。

amy_mhd的博客 154

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Python知识点汇总思维导图

Python知识点汇总思维导图 【下载地址】Python知识点汇总思维导图 这份Python知识点汇总思维导图是学习Python编程的绝佳助手,内容全面且结构清晰,适合初学者和进阶者使用。它涵盖了Python基础语法、数据结构与算法、面向对象编程、异常处理、文件操作、模块与包、网络编程、数据库操作以及Web开发等核心知识...

gitblog_06704的博客 296

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

java知识点汇总

今天发现了一个非常详细全面的java知识点汇总博客,转发下,与其他的小伙伴分享。 http://pengcqu.iteye.com/blog/504630java知识点汇总 这里记录下,有时间好好学习下。

xiaye1989的博客 329

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

操作系统知识点汇总

操作系统知识点汇总 目录 博客链接

qq_24095055的博客 727

thrift知识点汇总

111111

蔚蓝天空 297

算法知识点汇总

【代码】算法知识点汇总。

qq_45888225的博客 659

html表单元素知识点汇总

本文总结了HTML表单的核心元素及其用法,包括: <form>容器,定义表单提交方式(GET/POST)和目标URL <label>标签,用于关联表单控件 各类输入控件: 单行文本<input type="text"> 密码框<input type="password"> 多行文本<textarea> 单选按钮<input type="radio"> 复选框<input

Yqha1的博客 1120

设计模式知识点汇总

设计模式知识点汇总 目录 博客链接 单例模式 https://chung567115.blog.youkuaiyun.com/article/details/85772519

qq_24095055的博客 1403

机器学习知识点汇总

参考知乎《机器学习》前十章知识点汇总

weixin_47544382的博客 298

高等数学上册知识点汇总

高等数学上册知识点汇总 去发现同类优质开源项目:https://gitcode.com/ 高等数学是大学理工科的基础课程,为了帮助大一学生更快掌握课程要点,提高学习效率,我们提供了这份《高等数学上册知识点.pdf》。本资源文件详细梳理了高等数学上册的核心知识点,旨在省去同学们整理资料的时间,可以作为学习参考手册,对考试复习和日常知识积累都有极大的帮助。 文件内容:包括函数、极限、导数、微分、微分...

gitblog_06794的博客 502

Java基础知识点汇总

封装是一种信息隐蔽技术,使数据和加工该数据的方法封装为一个整体,以实现独立性很强的模块,使用户只能看到对象的外特性(对象能接收哪些消息,具有哪些处理能力),而对象的内特性(保存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。良好的封装可以提高代码的模块化程度,防止对象之间的不良的相互影响,使程序达到高内聚(许多功能尽量在类内部独立完成,不让外部干预),低耦合(提供给外部尽量少的方法调用)的终极目标。栈内存的操作方式类似于数据结构中的栈,优势在于它的存取速度较快,仅次于寄存器,栈中的数据还可以共享。

IT_1024_的博客 784

Kotlin 知识点汇总

Java 的写法Kotlin 的写法(Unit 跟 void 一样效果)// 在 Kotlin 可以省略 Unit 这种返回值通过以上几种函数的介绍,可以很方便优化kotlin中代码编写,整体看起来几个函数的作用很相似,但是各自又存在着不同。使用的场景有相同的地方比如run函数就是let和with的结合体。

sjb2274540432的博客 1392
上一篇: 基本排序算法
下一篇: 网络学习
ruby_xc
博客等级 码龄10年 10粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值