2019年最全面最新200+道JavaScript基础面试题(上)

在此之前,我也跟大家分享过很多的面试题,今天我要跟大家分享的这个JavaScript的面试一共有200多道,适用于前端学习与前端求职者,面试刷题,里面涵盖的内容比较广,今天只是整理了部分面试题,希望对你们有所帮助

01、JavaSript有哪些垃圾回收机制?

标记清除( mark and sweep )
这是JavaScr i pt 最常见的垃圾回收方式。当变量进入执行环境的时候,比如在函数中声明一个变量,垃圾回收器将其标记为“进入环境” 。
当变量离开环境的时候(函数执行结束),将其标记为“离开环境”。
垃圾回收器会在运行的时候给存储在内存中的所有变量加上标记,然后去掉环境中的变量,以及被环境中变量所引用的变量(闭包)的标记。在完成这些之后仍然存在的标记就是要删除的变量。
引用计数( reference counting)
在低版本的IE 中经常会发生内存泄漏,很多时候就是因为它采用引用计数的方式进行垃圾回收。引用计数的策略是跟踪记录每个值被使用的次数。当声明了一个变量并将一个引用类型赋值给该变量的时候, 这个值的引用次数就加1 。如果该变量的值变成了另外一个,则这个值的引用次数就减1 。
当这个值的引用次数变为0 的时候,说明没有变量在使用,这个值没法被访问。
因此, 可以将它占用的空间回收,这样垃圾回收器会在运行的时候清理引用次数为0 的值占用的空间。
在IE中虽然JavaScript 对象通过标记清除的方式进行垃圾回收,但是BOM 与DOM 对象是用引用计数的方式回收垃圾的。也就是说, 只要涉及BOM 和DOM , 就会出现循环引用问题。

02、列举几种类型的DO M 节点
有以下几类DOM 节点。
• 整个文档是一个文档( Document )节,点。
• 每个HTML 标签是一个元素( E l ement )节点。
• 每一个HTML 属性是一个属性( Attribute )节点。. 包含在HTML 元素中的文本是文本( Text )节点。

03、谈谈JavaSript 标签中defer 和async 属性的区别。
( 1 ) defer 属性规定是否延迟执行脚本,直到页面加载为止。async 属性规定脚本一旦可用,就异步执行。
( 2) defer 并行加载JavaScript 文件, 会按照页面上script 标签的顺序执行。async 并行加载JavaScript 文件,下载完成立即执行,不会按照页面上JavaScript 标签的顺序执行。

04、说说你对闭包的理解。
使用闭包主要是为了设计私有的方法和支量。闭包的优点是可以避免全局变量
的污染;缺点是闭包会常驻内存, 增加内存使用量,使用不当很容易造成内存泄漏。在JavaScript 中,函数即闭包,只有函数才会产生作用域。
闭包有3 个特性。
( I )函数嵌套函数。
( 2 )在函数内部可以引用外部的参数和支量。
( 3 )参数和变量不会以垃圾回收机制回收。

05、解释一下unshift ()方法。
该方法在数组启动时起作用,与push ()不同。它将参数成员添加到数组的顶部。
下面给出一段示例代码。
var name= [ ” ] ohn ” ]
name unshift (”char lie”);
name unshi ft ( ” ] oseph”,” Jane " ) ;
cons ole log (name );
输出生口下所示。
[ ” joseph H ,” Jane ”,” char lie ”,” john ” ]

06、encodeURI ()和decodeURI ()的作用是什么?
encodeURI()用于将URL 转换为十六进制编码。而decodeURI()用于将编码的URL
转换回正常URL 。

07、为什么不建议在JavaScript 中使用innerHTML?
通过innerHTML 修改内容, 每次都会刷新,因此很慢。在innerHTML 中没有验证的机会, 因此更容易在文档中插入错误代码,使网页不稳定。

08、如何在不支持JavaScript 的旧浏览器中隐藏JavaScrpit 代码?
在<script>标签之后的代码中添加“<!一” , 不带引号。
在</script>标签之前添加“刀…>”,代码中没有引号。
旧浏览器现在将JavaScript 代码视为一个长的HTML 注释, 而支持JavaScript 的浏览器则将“< !一” 和“// …>” 作为一行注释。

09、在DOM 操作中怎样创建、添加、移除、替换、插入和查找节点?
具体方法如下。
( 1 ) 通过以下代码创建新节点。
createDocurnentFragrnent () // 创建一个DOM 片段
createElernent() // 创建一个具体的元素
creat eTextNode( ) //创建一个文本节点

( 2 ) 通过以下代码添加、移除、替换、插入节,点。
appendChild()
removeChild ( )
replaceChild ()
insertBefore () //并没有inse r tAf t er ()

( 3 )通过以下代码查找节点。
getElernentsByTagNarne() //通过标签名称查找节点
getE l erne 口tsByNarne () //通过元素的name 属性的值查找节点( IE 容错能力较强, 会得到一个数
//组, 其中包括id 等于name 值的节点)
getElernentByid() //通过元素 Id 查找节点, 具有唯一性

10、如何实现浏览器内多个标签页之间的通信?
调用Jocalstorge 、cookie 等数据存储通信方式。

11、null 和undefined 的区别是什么?
null 是一个表示“无”的对象, 转为数值时为O; undefined 是一个表示“元”
的原始千直, 转为主丈千直时为NaN 。
当声明的变量还未初始化时,变量的默认值为undefined ,null 用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。
undefined 表示“缺少值”, 即此处应该有一个值,但是还没有定义,典型用法是如下。
( 1 )如果变量声明了,但没有赋值,它就等于undefined 。
( 2 )当调用函数时,如果没有提供应该提供的参数,该参数就等于undefined 。
( 3 )如果对象没有赋值,该属性的值为undefined 。
( 4 )当函数没有返回值时, 默认返回undefined 。
null 表示“ 没有对象” , 即此处不应该有值,典型用法是如下。
( 1 )作为函数的参数, 表示该函数的参数不是对象。
( 2 )作为对象原型链的终点。

12、new 操作符的作用是什么?
作用如下。
( l )创建一个空对象。
( 2 )由this 变量引用该对象。
( 3 )该对象继承该函数的原型(更改原型链的指向)。
( 4 )把属性和方法加入到thi s 引用的对象中。
( 5 )新创建的对象由this 引用,最后隐式地返回this ,过程如下。
var obj = {};
obj.proto=Base.prototype;
Base.call(obj);

13、JavaScript 延迟加载的方式有哪些?
包括defer 和async 、动态创建DOM (创建script , 插入DOM 中,加载完毕后
回调、按需异步载入JavaScript 。

14、call()和apply ()的区别和作用是什么?
作用都是在函数执行的时候,动态改变函数的运行环境( 执行上下文)。
call 和apply 的第一个参数都是改变运行环境的对象。
区别如下:
call 从第二个参数开始,每一个参数会依次传递给调用函数;apply 的第二个参数是数组,数组的每一个成员会依次传递给调用函数。
如:
func . call(funcl , varl , var2, var3)
对应的apply 写法为:
func . apply(funcl, [varl, var2 , var3])

15、哪些操作会造成内存泄漏?
内存泄漏抬不再拥有或需要任何对象( 数据)之后,它们仍然存在于内存中。
提示:垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为0 (没有其他对象引用过该对象),或对该对象的唯一引用是循环的,那么该对象占用的内存立即被回收。
如果setTimeout 的第一个参数使用字符串而非函数,会引发内存泄漏。
闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)等会造内存泄漏。

16、列举I E 与finefox 的不同之处。
不同之处如下。
( 1 ) IE 支持currentStyle; Firefox 使用getComputStyle 。
( 2) IE 千史用innerText· Firefox 千史用textContent 。
( 3 )在透明度滤镜方面, IE 使用自lter:alpha(opacity= num); Firefox 使用-moz-opacity:num。
( 4 )在事件方面, IE 使用a ttachEv ent: Firefox 使用addEventListener。
( 5 )对于鼠标位直:IE 使用event.clientX; Firefox 使用event.pageX 。
( 6) IE 千史用event.srcElement· Firefox 千史用event . target 。
( 7) 要消除list 的原点, IE 中仅须使margin:O 即可达到最终效果;Firetox 中需要设直
margin:O 、padding:O 和list” style:none 。
( 8 ) css 圆角:IE7 以下不支持圆角。

17、讲解一下JavaScript 对象的几种创建方式。
有以下创建方式。
( 1 ) Object 构造函数式。
( 2 )对象字面量式。
( 3 )工厂模式。
( 4 )安全工厂模式。
( 5 )构造函数模式。
( 6 )原型模式。
( 7) 混合构造函数和原型模式。
( 8 )动态原型模式。
( 9 )寄生构造函数模式。
( 10 )稳妥构造函数模式。

18、如何实现异步编程?
具体方法如下。
方法1 ,通过回调函数。优点是简单、容易理解和部署· 缺点是不利于代码的阅读和维护,各个部分之间高度相合( Coupling ),流程混乱,而且每个任务只能指定一个回调函数。
方法2 ,通过事件监听。可以绑定多个事件,每个事件可以指定多个回调函数,而且可以“去搞合”( Decoupling ),有利于实现模块化;缺点是整个程序都要变成事件驱动型,运行流程会变得很不清晰。
方法3 ,采用发布/订阅方式。性质与“事件监听”类似, 但是明显优于后者。
方法4 ,通过Promise 对象实现。Promise 对象是CommonJS 工作组提出的一种规范,旨在为异步编程提供统一接口。它的思想是,每一个异步任务返回一个Promise 对象,该对象有一个then 方法,九许指定回调函数。

19、请解释一下JavaScript的同源策略。
同源策略是客户端脚本(尤其是JavaScript )的重要安全度量标准。它最早出自Netscape Navigator 2.0 ,目的是防止某个文档或脚本从多个不同源装载。这里的同源策略指的是协议、域名、端口相同。同源策略是一种安全协议。指一段脚本只能读取来自同一来源的窗口和文档的属性。

20、为什么要有同源限制?
我们举例说明。比如一个黑客, 他利用I frame 把真正的银行登录页面嵌到他的页面上,当你使用真实的用户名、密码登录时,他的页面就可以通过JavaScript 读取到你表羊上input 中的内容,这样黑客就会轻松得到你的用户名和密码。

21、在JavaScript中,为什么说函数是第一类对象?
第一类函数即JavaScript 中的函数。这通常意味着这些函数可以作为参数传递给其他函数,作为其他函数的值返回,分配给变量,也可以存储在数据结构中。

22、什么是事件?I E 与F irefo×的事件机制有什么区别?如何阻止冒泡?
事件是在网页中的某个操作(有的操作对应多个事件)。例如,当羊击一个按钮时, 就会产生一个事件,它可以被JavaScr巾t 侦测到。
在事件处理机制上, IE 支持事件冒泡;F i refox 同时支持两种事件模型,也就是捕获型事件和冒泡型事件。
阻止方法是ev. stopPropagation () 。注意旧版IE 中的方法ev. ca n ce!Bub bl e =true.

23、函数声明与函数表达式的区别?
在JavaScript 中,在向执行环境中加载数据时, 解析器对函数声明和函数表达式
并非是一视同仁的。解析器会首先读取函数声明,并使它在执行任何代码之前可用(可以访问)。至于函数表达式,则必须等到解析器执行到它所在的代码行, 才会真正解析和执行它。

24、如何删除一个cookie?
为了删除cookie ,要修改exp i res ,代码如下。
document . cookie = user=icketang ; expires = '+new Date(0 )

25、编写一个方法,求一个字符串的长度( 单位是字节)
假设一个英文字符占用一字节, 一个中文字符占用两字节:
function GetBytes (str ) {
var len = str . length ;
var bytes = len ;
for (var i=0 ; i if ( str . charCodeAt ( 工) > 255 ) bytes++ ;
}
retu rn bytes ;
}
alert(GetBytes ( ” hello 爱创课堂!” ) );

26、对于元素, attribute 和 property 的区别是什么?
attribute 是DOM 元素在文档中作为HTML 标签拥有的属性;property 就是DOM元素在JavaScr中t 中作为对象拥有的属性。
对于HTML 的标准属性来说, attribute 和property 是同步的,会自动更新,但是对于自定义的属性来说,它们是不同步的。

27、解释延迟脚本在JavaScript 中的作用。
默认情况下,在页面加载期间, HTML 代码的解析将暂停, 直到脚本停止执行。
这意味着,如果服务器速度较慢或者脚本特别“沉重”,则会导致网页延迟。在使用
Deferred 时,脚本会延迟执行,直到HTML 解析器运行。这缩短了网页的加载时间,并
且它们的显示速度更快。

28、什么是闭包( closure ) ?
为了说明闭包,创建一个闭包。

function hello () {   //函数执行完毕, 变量仍然存在
var num = 100 ;
var showResu l t= function ( ) { alert (num ); }
num++ ;
return showResult ;
}
var showResult= hello ();
showResult ( )// 执行结果: 弹出10 1

执行hello ()后, hello ()闭包内部的变量会存在,而闭包内部函数的内部变量不会存在,使得JavaScript 的垃圾回收机制不会收回hello ()占用的资源,因为h e llo ()中内部函数的执行需要依赖hello ()中的变量。

29、如何判断一个对象是否属于某个类?
使用instanceof 关键字,判断一个对象是否是类的实例化对象;使用constructor
属性,判断一个对象是否是类的构造函数。

30、JavaScript 中如何使用事件处理程序?
事件是由用户与页面的交互(例如羊击链接或填写表单) 导致的操作。需要一
个事件处理程序来保证所有事件的正确执行。事件处理程序是对象的额外属性。此属性包括事件的名称和事件发生时采取的操作。

31、在JavaScript中有-个函数,执行直接对象查找时,它始终不会查找
原型,这个函数是什么?
hasOwnPrope。

32、在JavaScript中如何使用DOM?
DOM 代表文档对象模型,并且负责文档中各种对象的相王文互。DOM 是开发网页所必需的,其中包括诸如段落、链接等对象。可以操作这些对象,如添加或删除等。为此, DOM 还需要向网页添加额外的功能。

33、documen.wn怡和innerHTML 的区别是什么?
document.write 重绘整个页面;innerHTML 可以重绘页面的一部分。

34、在JavaScript中读取文件的方法是什么?
可以通过如下方式读取服务器中的文件内容。

function read.P.jaxFile (url) {
//创建xhr
var xhr = new XMLHttpRequest() ;
//监听状态
xhr . onreadysta techange = function () {
//监听状态值是4
if (xhr . readyState === 4 晶晶xhr.status === 200) {
console . log(xhr . responseText)
       }
}
//打开请求
xhr . open ( ’ GET ', url , true)
// 发送数据
xhr . send(null) 
}

可以通过如下方式读取本地计算机中的内容。
function readinputFile (id) {
var file= document . getElementByid(id) . files[O] ;
// 实例化FileReader
var reader= new FileReader ();
// 读取文件
reader . readAsText(file)
// 监听返回
reader . on load = function (data) {
console . log(data , this . result)
     }
}

35、如何分配对象属性?
将属性分配给对象的方式与赋值给变量的方式相同。例如,表羊对象的操作值
以下列方式分配给” submit ”:docume nt.form.action = ” submit ” 。

36、请说几条书写JavaSc 「ipt 语句的基本规范。
基本规范如下。
( 1 )不要在同一行声明多个变量。
( 2 )应使用===/ !==来比较t rue /false 或者数值。
( 3 )使用对象字面量替代n ew Array 这种形式。
( 4 )不要使用全局函数。
( 5 ) switch 语句必须带有defau lt 分支。
( 6 )函数不应该有时有返回值,有时没有返回值。
( 7 ) for 循环必须使用大括号括起来。
( 8 ) i f 语句必须使用大括号括起来。
( 9 ) for-in 循环中的变量应该使用var 关键字明确限定的作用域,从而避免作用域污染。

37、eval 的功能是什么?
它的功能是把对应的字符串解析成JavaScript 代码并运行。
应该避免使用eval ,它会造成程序不安全,非常影响性能(执行两次, 一次解析成JavaScript 语句, 一次执行)。

38、[“1”,“2”,“3”] . map(parselnt)的执行结果是多少?
[1, NaN, NaN] ,因为parselnt 需要两个参数( val, radix ), 其中radix 表示解析时用的基数(进制); map 传递了3 个参数( item, index, array ),对应的radix 不合法导致解析失败。

39、谈谈你对this 对象的理解。
this 是JavaScript 的一个关键字,随着函数使用场合的不同, this 的值会发生变化。但是有一个总原则, 即this 指的是调用函数的那个对象。
一般情况下, this 是全局对象Global , 可以作为方法调用。

40、web-garden 和web-farm 有什么不同?
web-garden 和web-farm 都是网络托管系统。唯一的区别是web-garden 是在单个服务器中包含许多处理器的设直,而web ”farm 是使用多个服务器的较大设置。

41、说一下document.write ()的用法。
docume旺write()方法可以用在两个地方,页面载入过程中用实时脚本创建页面内容,以及用延时脚本创建本窗口或新窗口的内容。
document. write 只能重给整个页面, innerHTML 可以重给页面的一部分。

42、在JavaScript中什么是类(伪) 数组?如何将类(伪) 数组转化为标准数组?
典型的类(伪)数组是函数的argument 参数, 在调用getE lementsByTagName和docum e nt.childNodes 方法时,它们返回的NodeList 对象都属于伪数组。可以使用Array.prototype.slice.call ( fakeArray )将数组转化为真正的Array 对象。

43、JavaScript 中callee 和caller的作用是什么?
品:caller 返回一个关于函数的引用,该函数调用了当前函数;callee 返回正在执行的函数,也就是指定的function 对象的正文。

44、讲一下手写数组快速排序的步骤。
“快速排序”的思想很简单,整个排序过程只需要3 步。
( 1 )在数据集之中,选择一个元素作为“基准”( pivot ) 。
( 2 )将所有小于“基准”的元素,都移到“基准”的左边;将所有大于“基准”的元素,都移到“基准”的右边。
( 3 )对“基准”左边和右边的两个子集, 不断重复第( 1 )步和第( 2 )步, 直到所有子集只剩下一个元素为止。

45、如何统计字符串飞aaabbbccccddfgh ”中字母的个数或统计最多的字母数?
具体代码如下。

var str = ” aaaabbbccccddfgh ”;
function dealStr (str) {
var obj = {) ;
for (var i = 0 ; i < str. l ength; i++ ) {
var v = str . charAt {i );
if (obj[v] && ob][ v) . value===v ) {
++ob][ v] . count
) else {
obj[v] = {
count : 1 ,
value : v
                     }
      }
return obj ;
}
var obj= dealStr (str) ;
for (key in obj) {
console . log(obj[key) . value + ’ = ’ + obj [key] . count)
}

46、写一个function ,清除字符串前后的空格(兼容所有浏览器) 。
具体代码如下。

function trim(str) {
if (str && typeof str == =” s tring ” ){
return str . replace ( /^\ s+ l \s +$/ g , ”” ) ;
//去除前后空白符
}
}

47、列出不同浏览器中关于JavaScript 兼容性的两个常见问题。
( 1 )事件绑定兼容性问题。
IE8 以下的浏览器不支持用addEventListener 来绑定事件,使用attach event 可以解决这个问题。
( 2 ) stopPropagation 兼容性问题。
IE8 以下的浏览器不支持用巳.stopPropagation () 来阻止事件传播,使用e .return Value =false 可以解决这个问题。

48、闭包的优缺点是什么?
优点:不产生全局变量,实现属性私有化。
缺点:是闭包中的数据会常驻内存,在不用的时候需要删除,否则会导致内存溢出(内存泄漏) 。

49、用JavaScript 实现一个数组合并的方法(要求去重)。
代码如下

var arrl = ['a ' ];
var arr2 = [ ' b ' ,'c' ] ;
var arr3 = [ 'C ', [ 'd ' ] ,' e ' , undefined , null];
var concat = (function () {
// 去重合并arrl 和arr2
var concat = function (arrl , arr2) {
for (var i = 0, len = arr2 . length J 工< len ; i++) {
~arrl . indexOf (arr2 [ i]) || arrl . push (arr2 [i])
}
// 返回数组去重合并方法
return function () {
var result = [] ;
for (var i = 0 , len = arguments length ; i < len; i++) {
_concat(result , arguments[i])
}
return result
}
})()
执行co ncat (arrl, arr2 , arr3 )后, 会返回[' a ', null, undefined,' e ',[’d '],'c ' , 'b'] 。

50、说明正则表达式给所有string 对象添加去除首尾空白符的方法( trim 方法)。
代码如下

prototype . trim = function () {
return this . replace (/^\s+ | \s+$/g ,"" ) ;

51、说明用JavaScrpit 实现一个提取电话号码的方法
代码如下

var str = ” 12345678901 010 - 12345678 爱创课堂0418 - 1234567 13812345678 ”;
var reg=/(l\d{lO)) I (0\d{2 , 3)\ - \d{7 , 8J)/g ;
alert(str . match(reg) ;
测试“ 1234567890 1 010- 12345678 爱创课堂0418-1234567 13812345678 ”,得到的结果应该是:[ 12345678901 , 010-12345678, 0418-1234567, 13812345678 ] 。

52、JavaScript 中常用的逻辑运算符有哪些?
“and”(&&)运算符、“or”( ||) 运算符和“not”(!)运算符,它们可以在JavaScript中千史用。

53、什么是事件代理(事件委托)?
事件代理( Event Delegation ),又称为事件委托,是JavaScript 中绑定事件的常用技巧。顾名忠义,“事件代理”就是把原本需要绑定的事件委托给父元素,让父元素负责事件监听。事件代理的原理是DOM 元素的事件冒泡。使用事件代理的好处是可以提高性能。

54、什么是JavaScript?
JavaScript 是客户端和服务器端的脚本语言,可以插入HTML 页函中, 并且是目前较热门的Web 开发语言。同时, JavaScript 也是面向对象的编程语言。

55、列举Java 和JavaScript的不同之处。
Java 是一门十分完整、成熟的编程语言。相比之下, JavaScript 是一个可以被引入HTML 页面的编程语言。这两种语言并不完全相互依赖,而是针对不同的意图而设计的。Java 是一种面向对象编程( OOP )或结构化编程语言,类似的语言有C ++;而JavaScript是客户端脚本语言,它称为非结构化编程。

56、JavaScript 和ASP 脚本相比,哪个更快?
JavaScript 史快。JavaScript 是一种客户端语言,因此它不需要Web 服务器的协助就可以执行;ASP 是服务器端语言,因此它总是比JavaScript 慢。值得注意的是,JavaScript 现在也可用于服务器端语言( Node .js ) 。

57、什么是负无穷大?
Infinity 代表了超出JavaScript 处理范围的数值。也就是说, JavaScript 无法处理的数值都是In白nity , 实践证明, JavaScript 所能处理的最大值( N umber.MAX_VALUE )是1.797 693 134 862 315 7e+308 ,超过该数则为正无穷大;而最小值( Number.MIN VALUE)是如-324 ,小于该数则为0 。所以负无穷大代表的是小于-Number.MAX VALUE 的数字,JavaScript 中对应静态变量Number.NEGATIVE一卧JFINITY ,

58、如何将JavaSc 「ipt 代码分解成几行?
在字符串语句中可以通过在第一行末尾使用反斜杠“ \ ”来完成’例如,
document. writ巳(“This is \a program”) 。
如果不是在字符串语句中更改为幸斤行,那么JavaScript 会忽略行中的断点。下面的代码是完美的,但并不建议这样做,因为阻碍了调试。
var x=l, y=2 ,
z=
x+y ;

59、什么是未声明和未定义的变量?
未声明的变量是程序中不存在且未声明的变量。如果程序尝试读取未声明变量的值,则会在运行时遇到错误。未定义的变量是在程序中声明但尚未给出任何值的变量。如果程序尝试读取未定义变量的值, 则返回未定义的值。

60、如何编写可动态添加新元素的代码?
下面给出一段示例代码。

< ! DOCTYPE html>




</head>
<body>
<p id= " ickt ">ickt</p>
<script type=” text/javascript ">
function addNode () {
var p = document . createElement ( 'p ’ );
var textNode = document . createTextNode ( ’ 爱创课堂’ );
p . appendChild(textNode) ;
document . getElementByid ( ’ ickt ') . appendCh 工ld(p)
addNode ()
</script>
</body>
</html>
</code></pre> 
  <p><em><strong>61、什么是全局变量?这些变量如何声明?使用全局变量有哪些问题?</strong></em><br> 全局变量是整个代码中都可用的变量, 也就是说,这些变量没有任何作用域。var 关键字用于声明局部变量, 如果~-略var 关键字,则声明一个全局变量。使用全局变量面临的问题是局部交量和全局变量名称的冲突。此外,很难调试和测试依赖于全局变量的代码。</p> 
  <p><em><strong>62、解释JavaScript 中定时器的工作,并说明使用定时器的缺点</strong></em><br> 定时器用于在设定的时间执行一段代码, 或者在给定的时间间隔内重复该代码。这通过使用函数setTi meout 、setlnterval 和clearinterval 来完成。<br> setTimeout (如nction , delay )函数用于启动在所属延迟之后调用特定功能的定时器。<br> setlnterval ( function , delay )函数用于在捉到的延迟中重复执行给定的功能,只有在取消时才停止。<br> cl earl nte r飞1 al ( id )函数指示定时器停止。<br> 定时器在一个线程内运行,因此事件可能需要排队等待执行。</p> 
  <p><em><strong>63、ViewState 和SessionState 有什么区别?</strong></em><br> ViewState 特定于会话中的页面;Session State 特定于可在Web 应用程序中的所有页面上访问的用户特定数据。</p> 
  <p><em><strong>64、什么是===运算符?</strong></em><br> ===称为严格等式运算符,当两个操作数具有相同的值和类型时,该运算符返回true 。</p> 
  <p><em><strong>65、说明如何使用JavaScript 提交表单。</strong></em><br> 要使用JavaScript 提交表羊,可以使用以下代码。<br> document . form [0] submit ();</p> 
  <p><em><strong>66、元素的样式/类如何改变?</strong></em><br> 可以通过以下方式改变元素的样式。<br> document . getElementByid (”myText ” ) . style . fontSize = "20? ;<br> 可以通过以下方式改变元素的类。<br> document . getElementByid (”myText ”) . c l assName = ”anyclass ”;</p> 
  <p><em><strong>67、JavaScript 中的循环结构都有哪些?</strong></em><br> for 、while 、do … wh il e 、for_in, for of ( E创新增的)。</p> 
  <p><em><strong>68、如何在JavaScript 中将base 字符串转换为integer?</strong></em><br> parseint()函数解析一个字符串参数,并返回一个指定基数的整数。parselnt()将要转换的字符串作为其第一个参数,第二个参数是给定字符串的转换进制基数。为了将4F (基数16 )转换为整数,可以使用代码parselnt ("4F ",16)。</p> 
  <p><em><strong>69、说明“= = ”和“ === ”的区别。</strong></em><br> "=="仅检查值相等性,而"==="用于更严格的等式判定。如果两个变量的值或类型不同,则后者返回false 。</p> 
  <p><em><strong>70、3 + 2 +“ 7”的结果是什么?</strong></em><br> 由于3 和2 是整数,它们将直接相加,同时由于“ 7”是一个字符串,将会被直接连接, 因此结果将是57 。</p> 
  <p><em><strong>71、如何检测客户端机器上的操作系统?</strong></em><br> 为了检测客户端机器上的操作系统,应使用navigator.叩pVersion 字符串(属性)。</p> 
  <p><em><strong>72、JavaScript 中的null 表示什么?</strong></em><br> null 用于表示无值或无对象。它意味着没有对象或空字符串,没有有效的布尔值,没有数值和数组对象。</p> 
  <p><em><strong>73、delete 操作符的功能是什么?</strong></em><br> delete 操作符用于删除对象中的某个属性,但不能删除变量、函数等。</p> 
  <p><em><strong>74、JavaScript 中有哪些类型的弹出框?</strong></em><br> alert 、confirm 和prompt 。</p> 
  <p><em><strong>75、void ( 0 )的作用是什么?</strong></em><br> void 操作符使表达式的运算结果返回undefined ,<br> void ( 0 )用于防止页面刷新,并在调用时传递参数“。” 。<br> void ( 0 )用于调用另一种方法而不刷新页面。</p> 
  <p><em><strong>76、如何强制页面加载JavaScript 中的其他页面?</strong></em><br> 必须插入以下代码才能达到预期效果。</p> 
  <pre><code><script language=" JavaScript" type=" text/javascript ">
< 1-- location . href =" http : //newhost/newpa th/newfile . htm l " ; //-- >
</script>
</code></pre> 
  <p><em><strong>77、转义字符是用来做什么的?</strong></em><br> 当使用特殊字符(如羊引号、双引号、撒号和&符号)时,将使用特义字符(反斜杠) 。在字符前放置反斜杠,使其显示。<br> 下面给出两个示例。</p> 
  <pre><code>document . write " I m a " good " boy "
document . write " I m a \ " good \ "boy "
</code></pre> 
  <p><em><strong>78、什么是JavaScript cookie?</strong></em><br> cookie 是存储在访问者计算机中的变量。每当一台计算机通过浏览器请求某个页面时,就会发送这个cookie , 可以使用JavaScript 来创建和获取cook ie 的值。</p> 
  <p><em><strong>79、解释JavaScript中的pop()方法。</strong></em><br> pop ()方法与shift ()方法类似, 但不同之处在于shift ()方法在数组的开头工作。此外, pop ()方法将最后一个元素从给定的数组中取出并返回,然后改变被调用的数组。<br> 例如:</p> 
  <pre><code>var colors = [ "red ","blue ","green" ] ;
colors . pop ();
// colors : [ " red ","blue" ]
</code></pre> 
  <p><em><strong>80、在JavaScript中使用innerHTML 的缺点是什么?</strong></em><br> 缺点如下:<br> ( 1 )内容随处可见。<br> ( 2 )不能像“追加圭1J innerHTML ” 一样使用。<br> ( 3 )即使使用+=,如“ innerHTML = inner HTML + ‘ html ’”,旧的内容仍然会被HTML替换。<br> ( 4 ) 整个innerHTML 内容被重新解析并构建成元素, 因此它的速度要使得多。<br> ( 5 ) inn e rHTML 不提供验证,因此可能会在文档中插入具有破坏性的HTML 并将其中断。</p> 
  <p><em><strong>81、break 和continue 语句的作用是什么?</strong></em><br> break 语句从当前循环中退出;continue 语句继续下一个循环语句。</p> 
  <p><em><strong>82、在JavaScript 中, datatypes 的两个基本组是什么?</strong></em><br> 两个基本组是原始类型和引用类型。<br> 原始类型包括数字和布尔类型。引用类型包括更复杂的类型,如字符串和日期。</p> 
  <p><em><strong>83、如何创建通用对象?</strong></em><br> 通用对象可以通过以下代码创建。<br> var o =new Object () 。</p> 
  <p><em><strong>84、typeof 是用来做什么的?</strong></em><br> typeof 是一个运算符,用于返回变量类型的字符串描述。</p> 
  <p><em><strong>85、哪些关键字用于处理异常?</strong></em><br> try… catch … finally 用于处理JavaScript 中的异常。<br> try{ <br> 执行代码<br> ) catch (exp ) { <br> 抛出错误提示信息<br> ) finally { <br> 无论try /catch 的结果如何都会执行<br> }</p> 
  <p><em><strong>86、JavaScript 中不同类型的错误有几种?</strong></em><br> 有3 种类型的错误。<br> Load time errors ,该错误发生于加载网页时,例如出现语法错误等状况,称为加载时间错误,并且会动态生成错误。<br> Run time errors , 由于在HTML 语言中滥用命令而导致的错误。<br> Logical Errors ,这是由于在具有不同操作的函数上执行了错误逻辑而发生的错误。</p> 
  <p><em><strong>87、在JavaScript 中, push 方法的作用是什么?</strong></em><br> pu sh 方法用于将一个或多个元素添加或附加到数组的末尾。使用这种方法,可以通过传递多个参数来附加多个元素。</p> 
  <p><em><strong>88、在JavaScript中, unshift 方法的作用是什么?</strong></em><br> unshift 方法就像在数组开头工作的push 方法。该方法用于将一个或多个元素添加到数组的开头。</p> 
  <p><em><strong>89、如何为对象添加属性?</strong></em><br> 为对象添加属性有两种常用语法。<br> 中括号语法,比如obj [" class "] = 12 。<br> 点语法, 比如obj.class= 12 。</p> 
  <p><em><strong>90、获得CheckBox 状态的方式是什么?</strong></em><br> alert ( docurnent.getElementByld (’checkbox l’ ) .checked) ;<br> 如果CheckBox 选中, 此警告将返回TRUE 。</p> 
  <p><em><strong>91、解释一下window. onload 和onDocumentReady 。</strong></em><br> 在载入页面的所有信息之前,不运行window.on load 。这导致在执行任何代码之前会出现延迟。<br> window.onDocumentReady 在加载DOM 之后加载代码。这九许代码史早地执行(早于window.onlonad ) 。</p> 
  <p><em><strong>92、如何理解JavaScript 中的闭包?</strong></em><br> 闭包就是能够读取其他函数内部变量的函数。<br> 闭包的用途有两个, 一是可以读取函数内部的变量,二是让这些变量的值始终保持在内存中。</p> 
  <p><em><strong>93、如何把一个值附加到数组中?</strong></em><br> 可以在数纽末尾处添加成员arr [arr.length] = value;或者调用push 方法arr.push(value) 。</p> 
  <p><em><strong>94、解释一下for-in 循环。</strong></em><br> for-in 循环用于循环对象的属性。<br> for-in 循环的语法如下。<br> f or (var iable name 工n obje c t) { )<br> 在每次循环中,来自对象的一个属性与变量名相关联, 循环继续,直到对象的所有属性都被迫历。</p> 
  <p><em><strong>95、描述一下JavaScript 中的匿名函数。</strong></em><br> 被声明为没有任何命名标识符的函数称为匿名函数。一般来说,匿名函数在声<br> 明后无法访问。<br> 匿名函数声明示例如下。<br> var anon=function( ) { <br> a lert ( ’ I am a nonymous ’);<br> }<br> a non();</p> 
  <p><em><strong>96、IE 和DOM 事件流的区别是什么?</strong></em><br> 区别如下。<br> ( 1 )执行顺序不一样。<br> ( 2 )参数不一样。<br> ( 3 ) 事件名称是否加o n 不一样。<br> ( 4 ) t hi s 指向问题不一样。</p> 
  <p><em><strong>97、阐述一下事件冒泡。</strong></em><br> JavaScript 九许DOM 元素嵌套在一起。在这种情况下,如果单击子级的处理程序,父级的处理程序也将执行同样的工作。</p> 
  <p><em><strong>98、JavaScript 里函数参数arguments是数组吗?</strong></em><br> 在函数代码中,使用特殊对象arguments , 开发者无须明确指出参数名,使用下标就可以访问相应的参数。<br> arguments 虽然有数组的性质,但其并非真正的数组。它只是一个类数组对象,并没有数组的方法,不能像真正的数纽那样调用.join ()、.con cat () 、. pop ()等方法。</p> 
  <p><em><strong>99、什么是构造函数?它与普通函数有什么区别?</strong></em><br> 构造函数是一种特殊的方法,主要用来创建对象时初始化对象,经常与new 运算符一起使用,创建对象的语句中构造函数的名称必须与类名完全相同。与普通函数相比,区别如下。<br> ( I )构造函数只能由new 关键字调用。<br> ( 2 )构造函数可以创建实例化对象。<br> ( 3 )构造函数是类的标志。</p> 
  <p><em><strong>100、请解释一下JavaScript 和css 阻塞。</strong></em></p> 
  <pre><code>JavaScript 的阻塞特性是所有浏览器在下载JavaScript 代码的时候, 会阻止其他一切活动,比如其他资源的下载, 内容的呈现等,直到JavaScript 代码下载、解析、执行完毕后才开始继续并行下载其他资源并渲染内容。
为了提高用户体验, 新一代浏览器都支持并行下载JavaScript 代码,但是Java Script 代码的下载仍然会阻塞其他资源的下载(例如图片、css 文件等) 。
为了防止JavaScript 修改DOM 树,浏览器需要重新构建DOM 积仁所以就会阻塞其他资源的下载和渲染。
嵌入的JavaScr ipt 代码会阻塞所有内容的呈现,而外部JavaScript 代码只会阻塞其后内容的显示,两种方式都会阻塞其后资源的下载。也就是说,外部脚本不会阻塞外部脚本的力口载,但会阻塞外部脚本的执行。
css 本来是可以并行加载的,但是当css 后面跟着嵌入的JavaScript 代码的时候,该css 就会阻塞后面资源的下载。
而当把嵌入的JavaScript 代码放到 css 前面时,就不会出现阻塞的情况了(在IE6 下css 都会阻塞加载)。
根本原因是因为浏览器会维持HTML 中css 和JavaScript 代码的顺序,样式表必须在嵌入的JavaScript 代码执行前先加载、解析完。
而嵌入的JavaScript 代码会阻塞后面的资源力口载,所以就会出现css 阻塞资源、加载的情况。
</code></pre> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1306114174039920640"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(js常用案例,javascript面试题)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1892506293600579584.htm"
                           title="cesium(vue)一些面试问题(包含Three.js)" target="_blank">cesium(vue)一些面试问题(包含Three.js)</a>
                        <span class="text-muted">GIS瞧葩菜</span>
<a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/cesium/1.htm">cesium</a>
                        <div>1.在不同的应用场景和技术栈中,模型加载方法和格式有所不同,下面主要从Web前端三维场景(使用Three.js和cesium)使用Three.js加载模型常见模型格式及加载方法GLTF/GLB格式格式特点:GLTF(GraphicsLibraryTransmissionFormat)是一种开放的、基于JSON的三维模型传输格式,GLB是其二进制版本。它们具有文件小、加载快、支持动画、材质和骨骼等优</div>
                    </li>
                    <li><a href="/article/1892503270987984896.htm"
                           title="(九万字)面向2025年BOSS直聘人工智能算法工程师高频面试题解析" target="_blank">(九万字)面向2025年BOSS直聘人工智能算法工程师高频面试题解析</a>
                        <span class="text-muted">快撑死的鱼</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E5%9B%9E%E5%BD%92/1.htm">回归</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pytorch/1.htm">pytorch</a>
                        <div>面向2025年BOSS直聘人工智能算法工程师高频面试题解析1.机器学习(ML)理论解析机器学习是让计算机从数据中学习规律的一套方法论,包含监督学习、无监督学习和强化学习等范式。在监督学习中,给定带标签的数据,算法尝试学习从输入到输出的映射关系;无监督学习则在缺乏标签的情况下挖掘数据内在结构;强化学习则让智能体通过与环境交互、依据奖赏反馈来改进策略(Q-learning-Wikipedia)。机器学</div>
                    </li>
                    <li><a href="/article/1892501358276308992.htm"
                           title="java 实现TextRank算法提取文章摘要" target="_blank">java 实现TextRank算法提取文章摘要</a>
                        <span class="text-muted">melck</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>在Java中,常用的文章摘要提取库是“TextRank”算法。该算法从文本中提取主题和段落,并根据主题和文本中的单词计算权重。使用TextRank实现文章摘要提取具体步骤如下:寻找文章中的关键句子:首先需要分割出文章中的句子,可以使用分词库将文章拆分成句子,然后使用TextRank算法找到文章中与主题相关的句子,这些句子通常包含有标题、关键字等。计算句子的权重:针对关键句子,需要对每个句子计算权重</div>
                    </li>
                    <li><a href="/article/1892501257092919296.htm"
                           title="AI 如何接口调试?可以展示推理过程" target="_blank">AI 如何接口调试?可以展示推理过程</a>
                        <span class="text-muted"></span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">人工智能深度学习机器学习</a>
                        <div>如何在开发AI接口的同时,能看到实时的AI回复,避免传统的轮询方式,而无需长时间等待。常用的AI模型(比如Deepseek、Gemini)都是支持流式输出,那有没有一款API接口软件可以实现这功能?近期Apifox增强了调试SSE接口功能,实现了发起HTTP请求流式响应就会自动合并为可读文本,实时以自然语言呈现响应。而且针对Deepseek还能展示思考推理过程!这大大降低AI应用开发难度,有图为证</div>
                    </li>
                    <li><a href="/article/1892500097330114560.htm"
                           title="简易java调用DeepSeek Api教程" target="_blank">简易java调用DeepSeek Api教程</a>
                        <span class="text-muted">m0_62519278</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E5%B0%8F%E6%9C%AC%E6%9C%AC/1.htm">学习小本本</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>一、请求格式首先观察官方文档给出的访问api的样例脚本curlhttps://api.deepseek.com/chat/completions\-H"Content-Type:application/json"\-H"Authorization:Bearer"\-d'{"model":"deepseek-chat","messages":[{"role":"system","content":"</div>
                    </li>
                    <li><a href="/article/1892497576360472576.htm"
                           title="OpenAI 深度研究与 Gemini 深度研究:哪个更好?" target="_blank">OpenAI 深度研究与 Gemini 深度研究:哪个更好?</a>
                        <span class="text-muted">知识小报童</span>
<a class="tag" taget="_blank" href="/search/DeepSeek/1.htm">DeepSeek</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">神经网络</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86/1.htm">自然语言处理</a><a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/1.htm">语言模型</a><a class="tag" taget="_blank" href="/search/AIGC/1.htm">AIGC</a>
                        <div>目录*什么是OpenAI深度研究?**OpenAI深度研究的关键特性:**OpenAI深度研究的应用:**使用案例:**什么是Gemini深度研究?**Gemini深度研究的关键特性:**Gemini深度研究的应用:**使用案例:**Gemini2.0Flash:增强性能**可用性:**OpenAI深度研究与Gemini深度研究:详细比较**OpenAI深度研究与Gemini深度研究之间的关键区别</div>
                    </li>
                    <li><a href="/article/1892492282075082752.htm"
                           title="Linux常用的命令一" target="_blank">Linux常用的命令一</a>
                        <span class="text-muted">Agome99</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a>
                        <div>目录1.常用命令1.常用命令1)#与$提示的区别'#'表示用户有root权限,一般的以root用户登录提示符为#,'$'提示符表示用户为普通用户2)ifconfig查看ip地址eno1:代表由主板bios内置的网卡ens1:代表主板bios内置的PCI_E网卡enp2s0:PCI-E独立网卡eth0:如果以上都不用,则返回默认的网卡名ens33则属于第二种类型,即说明你的网卡是内置的PCI-E网卡</div>
                    </li>
                    <li><a href="/article/1892489385207721984.htm"
                           title="Conda 常用命令全解析" target="_blank">Conda 常用命令全解析</a>
                        <span class="text-muted">melck</span>
<a class="tag" taget="_blank" href="/search/conda/1.htm">conda</a>
                        <div>在Windows系统中,Conda是一款功能强大的包管理和环境管理工具,尤其对于数据分析、科学计算等场景有着重要的作用。本文将详细介绍Conda在Windows系统中的常用命令,帮助你高效地管理虚拟环境和软件包。一、环境管理命令1.1查看Conda版本conda--version该命令用于确认Conda是否成功安装以及查看其版本号。这对于确保Conda的兼容性和功能性非常重要。1.2创建新环境co</div>
                    </li>
                    <li><a href="/article/1892487492410601472.htm"
                           title="JavaScript 闭包与作用域的深度解析" target="_blank">JavaScript 闭包与作用域的深度解析</a>
                        <span class="text-muted">小钟H呀</span>
<a class="tag" taget="_blank" href="/search/JS%E7%9F%A5%E8%AF%86%E6%89%8B%E5%86%8C/1.htm">JS知识手册</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a>
                        <div>引言在JavaScript世界里,闭包和作用域是两个核心概念,理解它们对于编写高效、可维护的代码至关重要。本文将深入探讨JavaScript闭包与作用域的原理、应用及注意事项。一、作用域的概念(一)什么是作用域作用域是指变量和函数的可访问范围。在JavaScript中,主要有全局作用域和局部作用域。全局作用域:在代码的任何地方都可以访问到的变量和函数,通常在脚本的最外层或通过全局对象(如windo</div>
                    </li>
                    <li><a href="/article/1892485474463838208.htm"
                           title="深度学习之目标检测的常用标注工具" target="_blank">深度学习之目标检测的常用标注工具</a>
                        <span class="text-muted">铭瑾熙</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E7%9B%AE%E6%A0%87%E6%A3%80%E6%B5%8B/1.htm">目标检测</a><a class="tag" taget="_blank" href="/search/%E7%9B%AE%E6%A0%87%E8%B7%9F%E8%B8%AA/1.htm">目标跟踪</a>
                        <div>1LabelImgLabelImg是一款开源的图像标注工具,标签可用于分类和目标检测,它是用Python编写的,并使用Qt作为其图形界面,简单好用。注释以PASCALVOC格式保存为XML文件,这是ImageNet使用的格式。此外,它还支持COCO数据集格式。2labelmelabelme是一款开源的图像/视频标注工具,标签可用于目标检测、分割和分类。灵感是来自于MIT开源的一款标注工具Label</div>
                    </li>
                    <li><a href="/article/1892482448659378176.htm"
                           title="【vue】Mammoth.js的使用:将.docx转换成HTML" target="_blank">【vue】Mammoth.js的使用:将.docx转换成HTML</a>
                        <span class="text-muted">暴富暴富暴富啦啦啦</span>
<a class="tag" taget="_blank" href="/search/1024%E7%A8%8B%E5%BA%8F%E5%91%98%E8%8A%82/1.htm">1024程序员节</a>
                        <div>mammoth.convertToHtml(input,options):把源文档转换为HTML文档mammoth.convertToMarkdown(input,options):把源文档转换为Markdown文档。mammoth.extractRawText(input):提取文档的原始文本。这将忽略文档中的所有格式。每个段落后跟两个换行符。npminstallelement-uimammot</div>
                    </li>
                    <li><a href="/article/1892481187906121728.htm"
                           title="麒麟v10安装mysql5.7(ARM架构)" target="_blank">麒麟v10安装mysql5.7(ARM架构)</a>
                        <span class="text-muted">qqxinxi</span>
<a class="tag" taget="_blank" href="/search/arm%E5%BC%80%E5%8F%91/1.htm">arm开发</a>
                        <div>下载路径:华为云镜像麒麟v10是潮流时代的新时髦的linux操作系统,但随着ARM架构流行,出现了一些卡点,不以为然,没当回事的大吃一惊。经常卡住。例如:在安装mysql5.7(ARM架构)最简单:使用rpmmysql-5.7.27.1.el7.aarch64.rpm文件比较小下载完之后rpm-ivhmysql-5.7.27.1.el7.aarch64.rpm比较简单常用的方法,再不能连接互联网时</div>
                    </li>
                    <li><a href="/article/1892480557481259008.htm"
                           title="分布式数据库解析" target="_blank">分布式数据库解析</a>
                        <span class="text-muted">qcidyu</span>
<a class="tag" taget="_blank" href="/search/%E6%96%87%E7%AB%A0%E5%BD%92%E6%A1%A3/1.htm">文章归档</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E7%89%87/1.htm">数据分片</a><a class="tag" taget="_blank" href="/search/%E9%AB%98%E5%8F%AF%E7%94%A8%E6%9E%B6%E6%9E%84/1.htm">高可用架构</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">云数据库</a><a class="tag" taget="_blank" href="/search/%E5%85%B1%E8%AF%86%E7%AE%97%E6%B3%95/1.htm">共识算法</a><a class="tag" taget="_blank" href="/search/%E5%85%A8%E7%90%83%E4%B8%80%E8%87%B4%E6%80%A7/1.htm">全球一致性</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1/1.htm">分布式事务</a><a class="tag" taget="_blank" href="/search/CAP%E5%AE%9A%E7%90%86/1.htm">CAP定理</a>
                        <div>title:分布式数据库解析date:2025/2/20updated:2025/2/20author:cmdragonexcerpt:通过金融交易、社交平台、物联网等9大真实场景,结合GoogleSpanner跨洲事务、DynamoDB毫秒级扩展等38个生产级案例,揭示分布式数据库的核心原理与工程实践。内容涵盖CAP定理的动态权衡策略、Paxos/Raft协议的工程实现差异、TrueTime时钟</div>
                    </li>
                    <li><a href="/article/1892480305172901888.htm"
                           title="五大常考SQL面试题" target="_blank">五大常考SQL面试题</a>
                        <span class="text-muted">Begin to change</span>
<a class="tag" taget="_blank" href="/search/MySQL/1.htm">MySQL</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a>
                        <div>目录一、找出连续7天登陆,连续30天登陆的用户(小红书笔试,电信云面试),最大连续登陆天数的问题--窗口函数二、求连续点击三次的用户数,而且中间不能有别人的点击三、计算除去部门最高工资,和最低工资的平均工资(字节跳动面试)--窗口函数四、留存的计算,和累计求和的计算--窗口函数,自联结(pdd面试)一、找出连续7天登陆,连续30天登陆的用户(小红书笔试,电信云面试),最大连续登陆天数的问题--窗口</div>
                    </li>
                    <li><a href="/article/1892478409288773632.htm"
                           title="OpenLayers总结3" target="_blank">OpenLayers总结3</a>
                        <span class="text-muted">Super毛毛穗</span>
<a class="tag" taget="_blank" href="/search/WebGIS%E5%BC%80%E5%8F%91/1.htm">WebGIS开发</a><a class="tag" taget="_blank" href="/search/OpenLayers/1.htm">OpenLayers</a><a class="tag" taget="_blank" href="/search/GIS/1.htm">GIS</a><a class="tag" taget="_blank" href="/search/WebGIS/1.htm">WebGIS</a>
                        <div>一、静态测距1.原理静态测距主要是针对地图上已有的矢量要素(如线要素),利用OpenLayers提供的几何计算函数来获取其长度。在实际操作中,先加载包含几何要素的GeoJSON数据到矢量图层,当鼠标指针移动到要素上时,获取该要素的几何信息,再调用getLength函数计算其长度。2.代码实现步骤及注释//引入必要的模块importVectorLayerfrom"ol/layer/Vector.js</div>
                    </li>
                    <li><a href="/article/1892477779023294464.htm"
                           title="vue3-video-play 插件在 Vue 3 项目上的应用" target="_blank">vue3-video-play 插件在 Vue 3 项目上的应用</a>
                        <span class="text-muted">放逐者-保持本心,方可放逐</span>
<a class="tag" taget="_blank" href="/search/vue3%E5%BA%94%E7%94%A8/1.htm">vue3应用</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/vue3-video-play/1.htm">vue3-video-play</a>
                        <div>文章目录vue3-video-play插件在Vue3项目上的应用一、插件简介二、插件安装三、插件组件应用示例1.局部引入组件2.全局引入组件四、需要注意的事项五、本地环境将`package.json`中`"module":"./dist/index.es.js"`改为`"module":"./dist/index.mjs"`问题解析探索问题描述原因分析解决方案格式及应用实例vue3-video-p</div>
                    </li>
                    <li><a href="/article/1892475636832858112.htm"
                           title="SQL面试题练习 —— 取出累计值与1000差值最小的记录" target="_blank">SQL面试题练习 —— 取出累计值与1000差值最小的记录</a>
                        <span class="text-muted">夏木夕</span>
<a class="tag" taget="_blank" href="/search/SQL/1.htm">SQL</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>题目来源:滴滴目录1题目2建表语句3题解1题目已知有表t_cost_detail包含id和money两列,id为自增,请累加计算money值,并求出累加值与1000差值最小的记录。+-----+--------+|id|money|+-----+--------+|1|200||2|300||3|200||4|100||5|150||6|80||7|100||8|200|+-----+------</div>
                    </li>
                    <li><a href="/article/1892474879861649408.htm"
                           title="探索 TypeScript Redux:构建大规模JavaScript应用的终极指南" target="_blank">探索 TypeScript Redux:构建大规模JavaScript应用的终极指南</a>
                        <span class="text-muted">柳旖岭</span>

                        <div>探索TypeScriptRedux:构建大规模JavaScript应用的终极指南去发现同类优质开源项目:https://gitcode.com/在当今快速发展的前端开发领域中,组合正确工具集来应对复杂性和扩展性挑战至关重要。今天,我们将深入了解一个令人兴奋的开源项目——TypeScriptRedux,它结合了TypeScript、JSPM、typings、React和Redux的强大功能,为开发者</div>
                    </li>
                    <li><a href="/article/1892473870565306368.htm"
                           title="位图(BitMap)实现" target="_blank">位图(BitMap)实现</a>
                        <span class="text-muted">小猫猫猫◍˃ᵕ˂◍</span>
<a class="tag" taget="_blank" href="/search/bitmap/1.htm">bitmap</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                        <div>位图(BitMap)实现1.位图简介位图(BitMap)是一种高效的数据结构,用于存储和操作位(bit)数据。每个位可以表示一个布尔值(0或1),常用于去重、排序、快速查找等场景。2.核心功能⚙️设置位(Set):将某一位设置为1。清除位(Clear):将某一位设置为0。获取位(Get):检查某一位是否为1。打印位图(Print):以二进制形式打印位图。3.代码实现packageMyStruct;</div>
                    </li>
                    <li><a href="/article/1892473365688545280.htm"
                           title="Mybatis判断问题:深入解析与实战案例" target="_blank">Mybatis判断问题:深入解析与实战案例</a>
                        <span class="text-muted">DTcode7</span>
<a class="tag" taget="_blank" href="/search/sql%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/1.htm">sql数据库相关</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/SQL/1.htm">SQL</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%BC%80%E5%8F%91/1.htm">数据库开发</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a>
                        <div>Mybatis判断问题:深入解析与实战案例基础概念与作用说明``标签``,``,````示例一:基本的``标签使用说明示例二:``,``,``的使用说明示例三:使用``标签简化条件语句说明实际工作中的使用技巧自行拓展内容在现代企业级应用开发中,MyBatis作为一款优秀的持久层框架,以其灵活的SQL映射机制和强大的动态SQL功能,深受广大开发者的喜爱。然而,在使用过程中,如何准确地进行条件判断,特</div>
                    </li>
                    <li><a href="/article/1892471976795107328.htm"
                           title="前端导出word文件—包含canvas(echarts图表)" target="_blank">前端导出word文件—包含canvas(echarts图表)</a>
                        <span class="text-muted">Liuer_Qin</span>
<a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/canvas/1.htm">canvas</a><a class="tag" taget="_blank" href="/search/echarts/1.htm">echarts</a><a class="tag" taget="_blank" href="/search/echarts/1.htm">echarts</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a>
                        <div>一、使用的插件html-docx-js二、整体思路因为canvas是运行在内存中的,所以不能简单的通过dom获取canvas图片,需要手动的先将canvas转为image。三、实现先克隆要下载的DOM的副本。因为canvas是运行在内存中的,所以也不能通过cloneNode方法克隆下来(克隆下来是空的)。我们这里将原DOM中的canvas转成图片,然后插入到副本的对应位置,这样操作不会影响原DOM</div>
                    </li>
                    <li><a href="/article/1892471346366050304.htm"
                           title="侯捷 C++ 课程学习笔记:C++ 面向对象开发的艺术" target="_blank">侯捷 C++ 课程学习笔记:C++ 面向对象开发的艺术</a>
                        <span class="text-muted">孤寂大仙v</span>
<a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                        <div>在侯捷老师的C++系列课程中,《C++面向对象开发》这门课程让我对面向对象编程有了更深入的理解。面向对象编程(OOP)是现代软件开发中最重要的编程范式之一,而C++作为支持OOP的语言,提供了强大的工具和特性。侯捷老师通过系统的讲解和实战案例,帮助我掌握了如何在C++中高效地使用面向对象技术。以下是我对这门课程的学习笔记和心得体会。一、课程核心内容:C++面向对象开发的关键特性![侯捷老师的课程详</div>
                    </li>
                    <li><a href="/article/1892470464907898880.htm"
                           title="语聊房软件开发流程与基础功能" target="_blank">语聊房软件开发流程与基础功能</a>
                        <span class="text-muted">ALLSectorSorft</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a>
                        <div>开发一款语聊房软件需要系统的规划和多领域技术整合。以下是关键流程、基础功能及示例代码:---一、开发流程1.需求分析-明确目标用户(社交/游戏/教育)-竞品分析(Clubhouse/Discord/狼人杀)-核心功能优先级排序2.技术选型-实时语音:声网Agora(推荐)/腾讯云TRTC/WebRTC-即时通讯:Socket.io/Sendbird/Firebase-后端框架:Node.js/Sp</div>
                    </li>
                    <li><a href="/article/1892468952072777728.htm"
                           title="Vue.js 基础与实战指南:从入门到跑路" target="_blank">Vue.js 基础与实战指南:从入门到跑路</a>
                        <span class="text-muted">王嘉俊705</span>
<a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/visual/1.htm">visual</a><a class="tag" taget="_blank" href="/search/studio/1.htm">studio</a><a class="tag" taget="_blank" href="/search/code/1.htm">code</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a>
                        <div>一、Vue的两种使用方式扩展核心包开发直接通过引入Vue.js,适用于简单页面或局部功能增强。优点:轻量,无需构建工具。缺点:难以管理复杂项目,缺少工程化支持。工程化开发使用VueCLI、Vite等工具创建项目,结合Webpack/Vite构建。支持单文件组件(.vue文件),结构清晰(`,,)。插件生态丰富(如VueRouter、Vuex、Pinia)。二、Vue实例的深入理解核心配置项 new</div>
                    </li>
                    <li><a href="/article/1892468067355652096.htm"
                           title="【Python系列】Python 解释器的站点配置" target="_blank">【Python系列】Python 解释器的站点配置</a>
                        <span class="text-muted">Kwan的解忧杂货铺@新空间代码工作室</span>
<a class="tag" taget="_blank" href="/search/s1/1.htm">s1</a><a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术点,如集合,jvm,并发编程redis,kafka,Spring,微服务,Netty等常用开发工具系列:罗列常用的开发工具,如IDEA,M</div>
                    </li>
                    <li><a href="/article/1892466934134403072.htm"
                           title="SQL面试题集:累计值与1000差值最小的记录" target="_blank">SQL面试题集:累计值与1000差值最小的记录</a>
                        <span class="text-muted">数星星的阿波罗</span>
<a class="tag" taget="_blank" href="/search/Sql%E8%83%BD%E5%8A%9B%E9%80%9A%E5%85%B3/1.htm">Sql能力通关</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E4%BB%93%E5%BA%93/1.htm">数据仓库</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a>
                        <div>一、题目描述司机累计收入首次接近目标值的订单定位,滴滴平台计划优化司机奖励策略的触发机制,需精准识别司机在接单过程中累计收入首次接近特定目标值1000元的订单节点。该分析用于动态调整奖励发放规则,提升司机接单积极性。样例数据假设表t_sales结构如下:driver_idorder_idincomeorder_time11012002025-02-1909:00:0011023002025-02-</div>
                    </li>
                    <li><a href="/article/1892466302790987776.htm"
                           title="J-Link系列下载器的烧录问题彻底解决" target="_blank">J-Link系列下载器的烧录问题彻底解决</a>
                        <span class="text-muted">1zero10</span>
<a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">单片机</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">单片机</a>
                        <div>1.确保成功安装好keil5方法:按照此链接中课程1.1准备安装环境进行操作【铁头山羊stm32入门教程【新版】-哔哩哔哩】https://b23.tv/wb5XUGo2.安装J-link驱动2-1从jlink官网下载最新版本驱动2-2按照此链接视频中jlink对应部分进行操作【STM32常用程序烧录方法,KeilIDE,ST-Link,Jlink-OB,DAPLink,串口(Uart)-哔哩哔哩</div>
                    </li>
                    <li><a href="/article/1892465546335678464.htm"
                           title="Ubuntu切换终端快捷键" target="_blank">Ubuntu切换终端快捷键</a>
                        <span class="text-muted">yangsong4353</span>
<a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a><a class="tag" taget="_blank" href="/search/shell/1.htm">shell</a><a class="tag" taget="_blank" href="/search/term/1.htm">term</a>
                        <div>在Ubuntu系统中,使用终端(Terminal)进行操作时,掌握一些快捷键可以大大提高工作效率。以下是一些常用的终端快捷键及其功能:打开和关闭终端打开终端:Ctrl+Alt+T关闭终端:Ctrl+D标签页操作新建标签页:Ctrl+Shift+T关闭标签页:Ctrl+Shift+W切换标签页:Alt+数字键(如Alt+1,Alt+2等)或Ctrl+PageUp/PageDown复制和粘贴复制:Ct</div>
                    </li>
                    <li><a href="/article/1892463275187171328.htm"
                           title="Ubuntu终端常用快捷键总结" target="_blank">Ubuntu终端常用快捷键总结</a>
                        <span class="text-muted">机器人那些事儿</span>
<a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83/1.htm">开发环境</a><a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a>
                        <div>基本导航快捷键:Ctrl+A:将光标移到行首Ctrl+E:将光标移到行尾Ctrl+U:删除光标前的所有字符Ctrl+K:删除光标后的所有字符Ctrl+L:清屏(相当于执行clear命令)编辑命令行:Ctrl+W:删除光标前的一个单词Ctrl+Y:粘贴之前使用Ctrl+U或Ctrl+K删除的文本Ctrl+_:撤销上一步的操作历史命令:Ctrl+R:逆向搜索历史命令Ctrl+G:退出历史命令搜索模式C</div>
                    </li>
                    <li><a href="/article/1892463022924951552.htm"
                           title="利用Beautiful Soup和Pandas进行网页数据抓取与清洗处理实战" target="_blank">利用Beautiful Soup和Pandas进行网页数据抓取与清洗处理实战</a>
                        <span class="text-muted">傻啦嘿哟</span>
<a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a>
                        <div>目录一、准备工作二、抓取网页数据三、数据清洗四、数据处理五、保存数据六、完整代码示例七、总结在数据分析和机器学习的项目中,数据的获取、清洗和处理是非常关键的步骤。今天,我们将通过一个实战案例,演示如何利用Python中的BeautifulSoup库进行网页数据抓取,并使用Pandas库进行数据清洗和处理。这个案例不仅适合初学者,也能帮助有一定经验的朋友快速掌握这两个强大的工具。一、准备工作在开始之</div>
                    </li>
                                <li><a href="/article/45.htm"
                                       title="安装数据库首次应用" target="_blank">安装数据库首次应用</a>
                                    <span class="text-muted">Array_06</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a>
                                    <div>可是为什么再一次失败之后就变成直接跳过那个要求 
enter full pathname of java.exe的界面 
 
 
这个java.exe是你的Oracle 11g安装目录中例如:【F:\app\chen\product\11.2.0\dbhome_1\jdk\jre\bin】下的java.exe 。不是你的电脑安装的java jdk下的java.exe! 
注意第一次,使用SQL D</div>
                                </li>
                                <li><a href="/article/172.htm"
                                       title="Weblogic Server Console密码修改和遗忘解决方法" target="_blank">Weblogic Server Console密码修改和遗忘解决方法</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/Welogic/1.htm">Welogic</a>
                                    <div>        在工作中一同事将Weblogic的console的密码忘记了,通过网上查询资料解决,实践整理了一下。 
一.修改Console密码 
        打开weblogic控制台,安全领域 --> myrealm -->&n</div>
                                </li>
                                <li><a href="/article/299.htm"
                                       title="IllegalStateException: Cannot forward a response that is already committed" target="_blank">IllegalStateException: Cannot forward a response that is already committed</a>
                                    <span class="text-muted">Cwind</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/Servlets/1.htm">Servlets</a>
                                    <div>对于初学者来说,一个常见的误解是:当调用 forward() 或者 sendRedirect() 时控制流将会自动跳出原函数。标题所示错误通常是基于此误解而引起的。   示例代码:   
protected void doPost() {
    if (someCondition) {
        sendRedirect();
    }
    forward(); // Thi</div>
                                </li>
                                <li><a href="/article/426.htm"
                                       title="基于流的装饰设计模式" target="_blank">基于流的装饰设计模式</a>
                                    <span class="text-muted">木zi_鸣</span>
<a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a>
                                    <div>当想要对已有类的对象进行功能增强时,可以定义一个类,将已有对象传入,基于已有的功能,并提供加强功能。 
自定义的类成为装饰类 
 
模仿BufferedReader,对Reader进行包装,体现装饰设计模式 
 
装饰类通常会通过构造方法接受被装饰的对象,并基于被装饰的对象功能,提供更强的功能。 
装饰模式比继承灵活,避免继承臃肿,降低了类与类之间的关系 
 
装饰类因为增强已有对象,具备的功能该</div>
                                </li>
                                <li><a href="/article/553.htm"
                                       title="Linux中的uniq命令" target="_blank">Linux中的uniq命令</a>
                                    <span class="text-muted">被触发</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a>
                                    <div>Linux命令uniq的作用是过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行。在正常情 况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如 果输入文件用“- ”表示,则从标准输入读取。 
AD: 
uniq [选项] 文件 
说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个</div>
                                </li>
                                <li><a href="/article/680.htm"
                                       title="正则表达式Pattern" target="_blank">正则表达式Pattern</a>
                                    <span class="text-muted">肆无忌惮_</span>
<a class="tag" taget="_blank" href="/search/Pattern/1.htm">Pattern</a>
                                    <div>正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。 
  
例如,我们需要对QQ号码格式进行检验 
规则是长度6~12位  不能0开头  只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14} 
&nbs</div>
                                </li>
                                <li><a href="/article/807.htm"
                                       title="Oracle高级查询之OVER (PARTITION BY ..)" target="_blank">Oracle高级查询之OVER (PARTITION BY ..)</a>
                                    <span class="text-muted">知了ing</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a>
                                    <div>一、rank()/dense_rank() over(partition by ...order by ...) 
 
现在客户有这样一个需求,查询每个部门工资最高的雇员的信息,相信有一定oracle应用知识的同学都能写出下面的SQL语句: 
 
 select e.ename, e.job, e.sal, e.deptno  
  from scott.emp e,  
       (se</div>
                                </li>
                                <li><a href="/article/934.htm"
                                       title="Python调试" target="_blank">Python调试</a>
                                    <span class="text-muted">矮蛋蛋</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pdb/1.htm">pdb</a>
                                    <div>原文地址: 
http://blog.csdn.net/xuyuefei1988/article/details/19399137 
1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧: 
 
IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试: 
 
http://www.ibm.com/d</div>
                                </li>
                                <li><a href="/article/1061.htm"
                                       title="webservice传递自定义对象时函数为空,以及boolean不对应的问题" target="_blank">webservice传递自定义对象时函数为空,以及boolean不对应的问题</a>
                                    <span class="text-muted">alleni123</span>
<a class="tag" taget="_blank" href="/search/webservice/1.htm">webservice</a>
                                    <div>今天在客户端调用方法 
NodeStatus status=iservice.getNodeStatus(). 
 
结果NodeStatus的属性都是null。 
 
进行debug之后,发现服务器端返回的确实是有值的对象。 
 
后来发现原来是因为在客户端,NodeStatus的setter全部被我删除了。 
本来是因为逻辑上不需要在客户端使用setter, 结果改了之后竟然不能获取带属性值的</div>
                                </li>
                                <li><a href="/article/1188.htm"
                                       title="java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针" target="_blank">java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针</a>
                                    <span class="text-muted">百合不是茶</span>

                                    <div>C语言的强大在于可以直接操作指针的地址,通过改变指针的地址指向来达到更改地址的目的,又是由于c语言的指针过于强大,初学者很难掌握, java的出现解决了c,c++中指针的问题 java将指针封装在底层,开发人员是不能够去操作指针的地址,但是可以通过引用来间接的操作: 
  
定义一个指针p来指向a的地址(&是地址符号): 
        </div>
                                </li>
                                <li><a href="/article/1315.htm"
                                       title="Eclipse打不开,提示“An error has occurred.See the log file ***/.log”" target="_blank">Eclipse打不开,提示“An error has occurred.See the log file ***/.log”</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a>
                                    <div>打开eclipse工作目录的\.metadata\.log文件,发现如下错误: 
 
!ENTRY org.eclipse.osgi 4 0 2012-09-10 09:28:57.139 
!MESSAGE Application error 
!STACK 1 
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContai</div>
                                </li>
                                <li><a href="/article/1442.htm"
                                       title="spring aop实例annotation方法实现" target="_blank">spring aop实例annotation方法实现</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a><a class="tag" taget="_blank" href="/search/annotation/1.htm">annotation</a>
                                    <div>        在spring aop实例中我们通过配置xml文件来实现AOP,这里学习使用annotation来实现,使用annotation其实就是指明具体的aspect,pointcut和advice。1.申明一个切面(用一个类来实现)在这个切面里,包括了advice和pointcut 
AdviceMethods.jav</div>
                                </li>
                                <li><a href="/article/1569.htm"
                                       title="[Velocity一]Velocity语法基础入门" target="_blank">[Velocity一]Velocity语法基础入门</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/velocity/1.htm">velocity</a>
                                    <div>用户和开发人员参考文档 
http://velocity.apache.org/engine/releases/velocity-1.7/developer-guide.html 
  注释 
1.行级注释## 
2.多行注释#*  *# 
  变量定义 
使用$开头的字符串是变量定义,例如$var1, $var2, 
  赋值 
使用#set为变量赋值,例</div>
                                </li>
                                <li><a href="/article/1696.htm"
                                       title="【Kafka十一】关于Kafka的副本管理" target="_blank">【Kafka十一】关于Kafka的副本管理</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/kafka/1.htm">kafka</a>
                                    <div>1. 关于request.required.acks 
  
request.required.acks控制者Producer写请求的什么时候可以确认写成功,默认是0, 
0表示即不进行确认即返回。 
1表示Leader写成功即返回,此时还没有进行写数据同步到其它Follower Partition中 
-1表示根据指定的最少Partition确认后才返回,这个在 
  
Th</div>
                                </li>
                                <li><a href="/article/1823.htm"
                                       title="lua统计nginx内部变量数据" target="_blank">lua统计nginx内部变量数据</a>
                                    <span class="text-muted">ronin47</span>
<a class="tag" taget="_blank" href="/search/lua+nginx%E3%80%80+%E7%BB%9F%E8%AE%A1/1.htm">lua nginx  统计</a>
                                    <div>server {
    listen 80;
    server_name photo.domain.com;
    location /{set $str $uri;
        content_by_lua '
            local url = ngx.var.uri
            local res = ngx.location.capture(</div>
                                </li>
                                <li><a href="/article/1950.htm"
                                       title="java-11.二叉树中节点的最大距离" target="_blank">java-11.二叉树中节点的最大距离</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>
import java.util.ArrayList;
import java.util.List;


public class MaxLenInBinTree {

	/*
	 a.			1
	 		   /  \
	 		  2    3
	 		 / \  / \
	 		4   5 6  7
	 	max=4	pass "root"
	 </div>
                                </li>
                                <li><a href="/article/2077.htm"
                                       title="Netty源码学习-ReadTimeoutHandler" target="_blank">Netty源码学习-ReadTimeoutHandler</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a>
                                    <div> 
ReadTimeoutHandler的实现思路: 
开启一个定时任务,如果在指定时间内没有接收到消息,则抛出ReadTimeoutException 
这个异常的捕获,在开发中,交给跟在ReadTimeoutHandler后面的ChannelHandler,例如 
 
 

private final ChannelHandler timeoutHandler =
	new ReadTim</div>
                                </li>
                                <li><a href="/article/2204.htm"
                                       title="jquery验证上传文件样式及大小(好用)" target="_blank">jquery验证上传文件样式及大小(好用)</a>
                                    <span class="text-muted">cngolon</span>
<a class="tag" taget="_blank" href="/search/%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0/1.htm">文件上传</a><a class="tag" taget="_blank" href="/search/jquery%E9%AA%8C%E8%AF%81/1.htm">jquery验证</a>
                                    <div><!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="jquery1.8/jquery-1.8.0.</div>
                                </li>
                                <li><a href="/article/2331.htm"
                                       title="浏览器兼容【转】" target="_blank">浏览器兼容【转】</a>
                                    <span class="text-muted">cuishikuan</span>
<a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a><a class="tag" taget="_blank" href="/search/IE/1.htm">IE</a>
                                    <div>浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同 
 
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。 
 
碰到频率:100% 
 
解决方案:CSS里    *{margin:0;padding:0;} 
 
备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设</div>
                                </li>
                                <li><a href="/article/2458.htm"
                                       title="Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数" target="_blank">Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/shell/1.htm">shell</a><a class="tag" taget="_blank" href="/search/%24%23/1.htm">$#</a><a class="tag" taget="_blank" href="/search/%24%3F/1.htm">$?</a><a class="tag" taget="_blank" href="/search/%E7%89%B9%E6%AE%8A%E5%8F%98%E9%87%8F/1.htm">特殊变量</a>
                                    <div>前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:   
 
  $echo $$  
   
运行结果 
29949 
   特殊变量列表   变量 含义   $0 当前脚本的文件名   $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个</div>
                                </li>
                                <li><a href="/article/2585.htm"
                                       title="程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!" target="_blank">程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/unix/1.htm">unix</a>
                                    <div>翻到一本书,讲到编程一般原则是kiss:Keep It Simple, Stupid.对这个原则深有体会,其实不仅编程如此,而且系统架构也是如此。 
 KEEP IT SIMPLE, STUPID! 编写只做一件事情,并且要做好的程序;编写可以在一起工作的程序,编写处理文本流的程序,因为这是通用的接口。这就是UNIX哲学.所有的哲学真 正的浓缩为一个铁一样的定律,高明的工程师的神圣的“KISS 原</div>
                                </li>
                                <li><a href="/article/2712.htm"
                                       title="android Activity间List传值" target="_blank">android Activity间List传值</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/Activity/1.htm">Activity</a>
                                    <div>第一个Activity: 
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import a</div>
                                </li>
                                <li><a href="/article/2839.htm"
                                       title="tomcat 设置java虚拟机内存" target="_blank">tomcat 设置java虚拟机内存</a>
                                    <span class="text-muted">eksliang</span>
<a class="tag" taget="_blank" href="/search/tomcat+%E5%86%85%E5%AD%98%E8%AE%BE%E7%BD%AE/1.htm">tomcat 内存设置</a>
                                    <div>转载请出自出处:http://eksliang.iteye.com/blog/2117772 
http://eksliang.iteye.com/ 
常见的内存溢出有以下两种: 
java.lang.OutOfMemoryError: PermGen space  
java.lang.OutOfMemoryError: Java heap space 
  
------------</div>
                                </li>
                                <li><a href="/article/2966.htm"
                                       title="Android 数据库事务处理" target="_blank">Android 数据库事务处理</a>
                                    <span class="text-muted">gqdy365</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事</div>
                                </li>
                                <li><a href="/article/3093.htm"
                                       title="Java 打开浏览器" target="_blank">Java 打开浏览器</a>
                                    <span class="text-muted">hw1287789687</span>
<a class="tag" taget="_blank" href="/search/%E6%89%93%E5%BC%80%E7%BD%91%E5%9D%80/1.htm">打开网址</a><a class="tag" taget="_blank" href="/search/open%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">open浏览器</a><a class="tag" taget="_blank" href="/search/open+browser/1.htm">open browser</a><a class="tag" taget="_blank" href="/search/%E6%89%93%E5%BC%80url/1.htm">打开url</a><a class="tag" taget="_blank" href="/search/%E6%89%93%E5%BC%80%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">打开浏览器</a>
                                    <div>使用java 语言如何打开浏览器呢? 
我们先研究下在cmd窗口中,如何打开网址 
使用IE 打开 
D:\software\bin>cmd /c start iexplore http://hw1287789687.iteye.com/blog/2153709 
使用火狐打开 
D:\software\bin>cmd /c start firefox http://hw1287789</div>
                                </li>
                                <li><a href="/article/3220.htm"
                                       title="ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件" target="_blank">ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件</a>
                                    <span class="text-muted">justjavac</span>
<a class="tag" taget="_blank" href="/search/chrome/1.htm">chrome</a><a class="tag" taget="_blank" href="/search/Google/1.htm">Google</a><a class="tag" taget="_blank" href="/search/google+api/1.htm">google api</a><a class="tag" taget="_blank" href="/search/chrome%E6%8F%92%E4%BB%B6/1.htm">chrome插件</a>
                                    <div>Chrome Web Store 安装地址: https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice 
 
 由于众所周知的原因,只需替换一个域名就可以继续使用Google提供的前端公共库了。 同样,通过script标记引用这些资源,让网站访问速度瞬间提速吧</div>
                                </li>
                                <li><a href="/article/3347.htm"
                                       title="进程VS.线程" target="_blank">进程VS.线程</a>
                                    <span class="text-muted">m635674608</span>
<a class="tag" taget="_blank" href="/search/%E7%BA%BF%E7%A8%8B/1.htm">线程</a>
                                    <div>资料来源: 
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000 1、Apache最早就是采用多进程模式 2、IIS服务器默认采用多线程模式 3、多进程优缺点 优点: 
多进程模式最大</div>
                                </li>
                                <li><a href="/article/3474.htm"
                                       title="Linux下安装MemCached" target="_blank">Linux下安装MemCached</a>
                                    <span class="text-muted">字符串</span>
<a class="tag" taget="_blank" href="/search/memcached/1.htm">memcached</a>
                                    <div>前提准备:1. MemCached目前最新版本为:1.4.22,可以从官网下载到。2. MemCached依赖libevent,因此在安装MemCached之前需要先安装libevent。2.1 运行下面命令,查看系统是否已安装libevent。[root@SecurityCheck ~]# rpm -qa|grep libevent libevent-headers-1.4.13-4.el6.n</div>
                                </li>
                                <li><a href="/article/3601.htm"
                                       title="java设计模式之--jdk动态代理(实现aop编程)" target="_blank">java设计模式之--jdk动态代理(实现aop编程)</a>
                                    <span class="text-muted">Supanccy2013</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a>
                                    <div>    与静态代理类对照的是动态代理类,动态代理类的字节码在程序运行时由Java反射机制动态生成,无需程序员手工编写它的源代码。动态代理类不仅简化了编程工作,而且提高了软件系统的可扩展性,因为Java 反射机制可以生成任意类型的动态代理类。java.lang.reflect 包中的Proxy类和InvocationHandler 接口提供了生成动态代理类的能力。 
&</div>
                                </li>
                                <li><a href="/article/3728.htm"
                                       title="Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持" target="_blank">Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持</a>
                                    <span class="text-muted">wiselyman</span>
<a class="tag" taget="_blank" href="/search/spring+4/1.htm">spring 4</a>
                                    <div>2.1 默认方法(default method) 
 
 java8引入了一个default medthod; 
 用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展 
 使用default关键字 
 Spring 4.2支持加载在默认方法里声明的bean 
  
2.2 
 
 将要被声明成bean的类 
  
public class DemoService {
    </div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>