js基础
1)对js的理解?
2)请说出以下代码输出的值?
3)把以下代码,改写成依次输出0-9
4)如何区分数组对象,普通对象,函数对象
5)面向对象、面向过程
6)面向对象的三大基本特性
7)XML和JSON的区别?
8)Web Worker 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?
(49)公钥密码使得发送端和接收端无秘钥成为可能
(50)秘钥就是加密算法:移位密码,取任意一个字母按照一定的对应方式去修改。置换密码,置换字母位置
转子机。对称密码算法DES:秘钥长度短,不是那么安全了,内部的设计是保密的
(51)加密操作:代换,置换,多重加密
(53)对称加密:发送方和接收方共享相同的秘钥。怎样破解?分析加密算法,或者强力攻击,就是根据已知信息,
遍历出所有可能的密码
(54)公开秘钥密码学相关的两个问题:秘钥分配,数字签名
(55)公钥加密算法:是密码学的分水岭,使得密码学成为一门科学。要求有一个公钥和一个私钥,双方很难相互推导出来
。发送方和接收方使用不同的秘钥。公钥加密算法比对称加密算法要慢很多倍。公钥加密又叫非对称加密算法。
公钥加密算法是目前使用最广泛的加密算法。加密消息的秘钥是不能来解密消息的。甲用乙的共有秘钥对报文进行加密,
只有乙的私有秘钥才能够解密消息,这谁
都不能知道。报文一定是用乙的私有秘钥加密(签名)的。先签名,再加密。
当报文用用乙的私有秘钥加密,再用共有秘钥加密后。如果甲收到的报文是无误的,才能用已的共有秘钥解开报文。同时,
既然能解开,说明报文就是乙发送的。
(17)RSA算法,奠定了公钥加密算法的地位,是应用最广泛的加密算法。大数分解非常难,所以黑客无法破解。
(18)如何保证数据没有被篡改。认证函数,消息认证码,散列函数。散列函数的特点:容易计算,单向性,抗碰撞性。
(20)数字签名:验证作者,内容,第三方验证,表达个人对实施内容的知晓和认可。实际上就是一个认证的功能
(21)学习截止到这里: 7.1日期对象 6.1 DOM操作简介 第二章 线性表(3)
(22)一个完整的http请求过程:
(23)Content-Type:application/x-www-form-urlencoded
(26)学习截止到这里: 7.1 AJAX 6.1 DOM操作简介 排序算法中的:9.4 选择排序
(27)重写父类中的方法 @Override
(28)希尔排序中:如果采用直接插入排序作为子序列的排序方法,那么当 n 很大时,排序码平均比较次数和元素平
均移动次数大约在 n1.25 到 1.6n1.25 的范围内。
(29)快速排序的时间复杂度为:O(nlog2n)。快速排序的趟数取决于递归树的高度,因此空间复杂度取决于递归树
的高度
(30)实际开发过程中,强烈建议在使用数组的时候,数组元素的数据类型一定要相同
(31)array.slice(2,5),从数组元素的第二个数开始,直到第四个元素,不包含第五个元素
(32)array.unshift(‘a’),在数组头部加入元素a。array.push(‘a’),在数组尾部加入元素a
(33)array.shift()删除数组中的第一个元素,array.pop()删除数组中的最后一个元素
(34)array.join(“*”)使用分隔符*把不同字符串分开
(35)array1.concat(array2);连接字符串
(37)一个数的返回类型:Infinity,意思是无限大
(38)Math.round() 四舍五入函数,但应该注意,正数和负数的四舍五入方式是有一些差别的,3.5将舍入为4,
而-3.5将舍入为-3
(39)Math.ceil()上舍入,Math.floor()下舍入
(40)window.open(URL, 窗口名称, 参数);对参数的一些说明,top=100,left=100,width=200,
height=100,resizable(窗口大小可以调整),scrollbars(给窗口加入滚动条)
(42)学习截止到这里: 7.1 AJAX 11.1、JavaScript对话框 6.1 DOM操作简介 排序算法中的:9.4 选择排序
(43) window.alert()可以简写成alert(),是因为window对象是全局对象。prompt()提示信息
(44)document对象是window对象中的子对象,用于操作html文档
(45)document.writeln(“”);在输出内容的同时,在内容后面加一个换行符,注意只是添加了一个"\n",并没有起到
用户所期待的特殊效果。再把writeln(“”)放入标签
中才会显现出换行的效果。因为:pre标签能够把该标签内的换行符,空格等识别并解析出来。
(46)口碑营销非常关键而且重要:产品能充分满足用户的需求。花钱少做营销。利用小东西引导。
数据支持运营全过程:用户需求(分析市场机会和竞争格局,找准用户需求),基础体验(产品是1,运营是0),
口碑营销(无口碑,不运营),渠道运营(换位思考式),内容运营(营造UGC氛围i,提升产品留存率)。
产品和运营是不分家的。恰到好处的热点营销是比较成功的,不要盲目跟踪。对新版本要适度包装。产品是基石,
直接决定了产品的存留率,要注意留住用户,不停的提出新的有用的定位。怎样对产品定位,首先确定该产品需要
满足的核心需求。一个产品首先要有自己的核心功能。资讯获取平台:36,猎云网,腾讯科技,网易科技。
口碑营销的三个步骤:灰度期间(给少部分人先使用,产品自身的价值),定调(爆发期,产品自身的价值),延
展行业价值(行业营销)。
(48)在javascript中,当浏览器从上到下解析遇到window.οnlοad=function(){},就先不解析里面的内容,把
整个HTML文档解析完,在解析里面的内容。
(49)onerror只有在IE浏览器下面才有效
(50)getElementsByName()用于获取表单元素,最终返回的是一个数组
(51)空字符串的值是undefined。一般函数只有一种返回值
(52)arguments对于一个函数的重要性要注意加以理解
(53).CSS(“”,“”)的调用中,两个参数是获取,多个参数是设置。
(54)在JavaScript里面,style只能获取非行间样式。能够获取行间样式的只有两个函数。它们分别是:
currentStyle()<注意:IE浏览器兼容>,getcomputedStyle()<注意:firefox,chrome浏览器兼容>。那么怎样解决浏览器
不兼容的问题呢?通过if…else…语句来解决。
通常用以上的if…else…语句来解决浏览器的兼容性问题
(55)javascript中数组的使用相关介绍:
建议使用这种形式:var a=[1,2,3]; a.length(2);用于设置数组的长度为2,a.length(0);用于清空数组
尾部添加:push(),尾部删除pop() 头部添加:unshift(),头部删除shift()
中间删除:splice(起点位置,要删除的数组长度)。
中间插入:splice(起点位置,0,‘a’,‘b’)插入了a,b元素
替换操作:splcie(起点位置,2,‘a’,‘b’)把中间的2个元素替换成了a,b元素
数组连接:concat()
设置连接符号:a.join(‘-’);结果为:1-2-3
数组排序:a.sort()
如果是对数字进行排序:a.sort(function(){ return a-b;})这是从小到大进行的排序
(56)定时器的使用
打开间隔定时器:time1=setInterval(function(){alert(‘a’);},1000);//每隔1000毫秒执行一次,不间断执行
关闭间隔定时器:clearInterval(time1);
打开延时定时器:time1=setTimeout(function(){alert(‘a’);},1000);//延时1000毫秒执行一次,仅执行一次
关闭延时定时器:clearTimeout(time1);
(57)overflow属性规定当内容溢出元素框时候发生的事情。overflow:hidden;内容会被修剪,并且超出
元素框的内容是不可见的。
(58)在dom的定义中,节点分为文本节点<值为3>和元素节点<值为1>。ul.childNodes[i].nodeType的取值非0即3
- 文本节点 元素节点 文本节点
ul.childNodes.length=3。ul.children[i]只包含元素节点,不包含文本节点。
对于
firstChild,firstElementChild
lastChild,lastElementChild
nextSibling,nextElementSibling,(下一个兄弟节点)
previousSibling,previousElementSibling,(上一个兄弟节点)
注意:
firstElementChild的值是第一个元素节点。
用以下方式解决兼容性问题:
结尾
学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
/I0JBQkFCMA==/dissolve/70/gravity/Center)
结尾
学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
[外链图片转存中…(img-UH32ivJg-1715740022133)]