javascript常见习题(全)
1、什么是JavaScript?
JavaScript是客户端和服务器端脚本语⾔,可以插⼊到HTML页⾯中,并且是⽬前较热门的Web开发语⾔。同时,JavaScript也是⾯向对象编程语⾔。
类似的基本题⽬还包括:JavaScript都有哪些类型?JavaScript是谁发明的?…
2、列举Java和JavaScript之间的区别?
Java是⼀门⼗分完整、成熟的编程语⾔。相⽐之下,JavaScript是⼀个可以被引⼊HTML页⾯的编程语⾔。这两种语⾔并不完全相互依赖,⽽是针对不同的意图⽽设计的。 Java是⼀种⾯向对象编程(OOPS)或结构化编程语⾔,类似的如C ++或C,⽽JavaScript是客户端脚本语⾔,它被称为⾮结构化编程。
3. JavaScript和ASP脚本相⽐,哪个更快?
JavaScript更快。JavaScript是⼀种客户端语⾔,因此它不需要Web服务器的协助来执⾏。另⼀⽅⾯,ASP是服务器端语⾔,因此总是⽐JavaScript慢。值得注意的是,Javascript现在也可⽤于服务器端语⾔(nodejs)。
史上最全的Javascript⾯试题总结(内附答案)
4、什么是负⽆穷⼤?
如何下载javascript负⽆穷⼤是JavaScript中的⼀个数字,可以通过将负数除以零来得到。
5、如何将JavaScript代码分解成⼏⾏吗?
在字符串语句中可以通过在第⼀⾏末尾使⽤反斜杠“\”来完成
例:document.write(“This is \a program”);
如果不是在字符串语句中更改为新⾏,那么javaScript会忽略⾏中的断点。
例:
var x=1, y=2,
z=
x+y;
上⾯的代码是完美的,但并不建议这样做,因为阻碍了调试。
6、什么是未声明和未定义的变量?
未声明的变量是程序中不存在且未声明的变量。如果程序尝试读取未声明变量的值,则会遇到运⾏时错误。未定义的变量是在程序中声明但尚未给出任何值的变量。如果程序尝试读取未定义变量的值,则返回未定义的值。
7、如何编写可动态添加新元素的代码?
史上最全的Javascript⾯试题总结(内附答案)
8、什么是全局变量?这些变量如何声明,使⽤全局变量有哪些问题?
全局变量是整个代码长度可⽤的变量,也就是说这些变量没有任何作⽤域。var关键字⽤于声明局部变量或对象。如果省略var关键字,则声明⼀个全局变量。
例:// Declare a global globalVariable = “Test”;
使⽤全局变量所⾯临的问题是本地和全局变量名称的冲突。此外,很难调试和测试依赖于全局变量的代码。
9、解释JavaScript中定时器的⼯作?如果有,也可以说明使⽤定时器的缺点?
定时器⽤于在设定的时间执⾏⼀段代码,或者在给定的时间间隔内重复该代码。这通过使⽤函数setTimeout,setInterval和clearInterval 来完成。
setTimeout(function,delay)函数⽤于启动在所述延迟之后调⽤特定功能的定时器。
setInterval(function,delay)函数⽤于在提到的延迟中重复执⾏给定的功能,只有在取消时才停⽌。
clearInterval(id)函数指⽰定时器停⽌。
定时器在⼀个线程内运⾏,因此事件可能需要排队等待执⾏。
10、ViewState和SessionState有什么区别?
“ViewState”特定于会话中的页⾯。
“SessionState”特定于可在Web应⽤程序中的所有页⾯上访问的⽤户特定数据。
11、什么是===运算符?
===被称为严格等式运算符,当两个操作数具有相同的值⽽没有任何类型转换时,该运算符返回true。
12、说明如何使⽤JavaScript提交表单?
要使⽤JavaScript提交表单,请使⽤
document.form [0] .submit();
13、元素的样式/类如何改变?
可以通过以下⽅式完成:
或
14、JavaScript中的循环结构都有什么?
For、While、do-while loops
15、如何在JavaScript中将base字符串转换为integer?
parseInt() 函数解析⼀个字符串参数,并返回⼀个指定基数的整数。parseInt()将要转换的字符串作为其第⼀个参数,第⼆个参数是给定字符串的基础。
为了将4F(基数16)转换为整数,所使⽤的代码是 :parseInt (“4F”, 16);
16、说明“”和“=”之间的区别?
“”仅检查值相等,⽽“=”是⼀个更严格的等式判定,如果两个变量的值或类型不同,则返回false。
17、3 + 2 +“7”的结果是什么?
由于3和2是整数,它们将直接相加。由于7是⼀个字符串,它将会被直接连接,所以结果将是57。
18、说明如何检测客户端机器上的操作系统?
为了检测客户端机器上的操作系统,应使⽤navigator.appVersion字符串(属性)。
19、Javascript中的NULL是什么意思?
NULL⽤于表⽰⽆值或⽆对象。它意味着没有对象或空字符串,没有有效的布尔值,没有数值和数组对象。
20、delete操作符的功能是什么?
delete操作符⽤于删除程序中的所有变量或对象,但不能删除使⽤VAR关键字声明的变量。
21、JavaScript中有哪些类型的弹出框?
Alert、Confirm and、Prompt
22、Void(0)怎么⽤?
Void(0)⽤于防⽌页⾯刷新,并在调⽤时传递参数“zero”。
Void(0)⽤于调⽤另⼀种⽅法⽽不刷新页⾯。
23、如何强制页⾯加载JavaScript中的其他页⾯?
必须插⼊以下代码才能达到预期效果:
史上最全的Javascript⾯试题总结(内附答案)
24、escape字符是⽤来做什么的?
使⽤特殊字符(如单引号,双引号,撇号和&符号)时,将使⽤转义字符(反斜杠)。在字符前放置反斜杠,使其显⽰。
例:
史上最全的Javascript⾯试题总结(内附答案)
25、什么是JavaScript Cookie?
Cookie是⽤来存储计算机中的⼩型测试⽂件,当⽤户访问⽹站以存储他们需要的信息时,它将被创建。
26、解释JavaScript中的pop()⽅法?
pop()⽅法与shift()⽅法类似,但不同之处在于Shift⽅法在数组的开头⼯作。此外,pop()⽅法将最后⼀个元素从给定的数组中取出并返回。然后改变被调⽤的数组。
例:
var cloths = [“Shirt”, “Pant”, “TShirt”];
cloths.pop();
//Now cloth becomes Shirt,Pant
27、在JavaScript中使⽤innerHTML的缺点是什么?
如果在JavaScript中使⽤innerHTML,缺点是:内容随处可见;不能像“追加到innerHTML”⼀样使⽤;即使你使⽤+ =
like“innerHTML = innerHTML +‘html’”旧的内容仍然会被html替换;整个innerHTML内容被重新解析并构建成元素,因此它的速度要慢得多;innerHTML不提供验证,因此我们可能会在⽂档中插⼊有效的和破坏性的HTML并将其中断。
28、break和continue语句的作⽤?
Break语句从当前循环中退出。
continue语句继续下⼀个循环语句。
29、在JavaScript中,dataypes的两个基本组是什么?
Primitive
Reference types
原始类型是数字和布尔数据类型。引⽤类型是更复杂的类型,如字符串和⽇期。
30、如何创建通⽤对象?
通⽤对象可以创建为:
var I = new object();
31、operator类型⽤来做什么?
'Typeof’是⼀个运算符,⽤于返回变量类型的字符串描述。
32、哪些关键字⽤于处理异常?
try… Catch-finally⽤于处理JavaScript中的异常。
史上最全的Javascript⾯试题总结(内附答案)
33、JavaScript中不同类型的错误有⼏种?
有三种类型的错误:
Load time errors:该错误发⽣于加载⽹页时,例如出现语法错误等状况,称为加载时间错误,并且会动态⽣成错误。Run time errors:由于在HTML语⾔中滥⽤命令⽽导致的错误。
Logical Errors:这是由于在具有不同操作的函数上执⾏了错误逻辑⽽发⽣的错误。
34、在JavaScript中使⽤的Push⽅法是什么?
push⽅法⽤于将⼀个或多个元素添加或附加到数组的末尾。使⽤这种⽅法,可以通过传递多个参数来附加多个元素。
35、什么是JavaScript中的unshift⽅法?
Unshift⽅法就像在数组开头⼯作的push⽅法。该⽅法⽤于将⼀个或多个元素添加到数组的开头。
36、对象属性如何分配?
属性按以下⽅式分配给对象:
obj[“class”] = 12;
或
obj.class = 12;
37、获得CheckBox状态的⽅式是什么?
alert(ElementById(‘checkbox1’)。checked);
如果CheckBox被检查,此警报将返回TRUE。
38、解释load和onDocumentReady?
在载⼊页⾯的所有信息之前,不运⾏onload函数。这导致在执⾏任何代码之前会出现延迟。
onDocumentReady在加载DOM之后加载代码。这允许早期的代码操纵。
39、你将如何解释JavaScript中的闭包? 什么时候使⽤?
Closure是与函数返回时保留在内存中的函数相关的本地声明变量。
例如:
史上最全的Javascript⾯试题总结(内附答案)
40、⼀个值如何附加到数组?
可以以给定的⽅式将值附加到数组:
arr [arr.length] = value;
41、解释for-in循环?
for-in循环⽤于循环对象的属性。
for-in循环的语法是:
史上最全的Javascript⾯试题总结(内附答案)
在每次循环中,来⾃对象的⼀个属性与变量名相关联,循环继续,直到对象的所有属性都被耗尽。
42、描述JavaScript中的匿名函数?
被声明为没有任何命名标识符的函数被称为匿名函数。⼀般来说,匿名函数在声明后⽆法访问。
匿名函数声明:
史上最全的Javascript⾯试题总结(内附答案)
43、.call()和.apply()之间有什么区别?
函数.call()和.apply()在使⽤上⾮常相似,只是有⼀点区别。当程序员知道函数参数的编号时,使⽤.call(),因为它们必须在调⽤语句中被提及为参数。另⼀⽅⾯,当不知道数字时使⽤.apply(),函数.apply()期望参数为数组。
.call()和.apply()之间的基本区别在于将参数传递给函数。它们的⽤法可以通过给定的例⼦进⾏说明。
史上最全的Javascript⾯试题总结(内附答案)
44、定义事件冒泡?
JavaScript允许DOM元素嵌套在⼀起。在这种情况下,如果单击⼦级的处理程序,⽗级的处理程序也将执⾏同样的⼯作。
45、什么样的布尔运算符可以在JavaScript中使⽤?
“And”运算符(&&),'Or’运算符(||)和’Not’运算符(!)可以在JavaScript中使⽤。
*运算符没有括号。
46、⼀个特定的框架如何使⽤JavaScript中的超链接定位?
可以通过使⽤“target”属性在超链接中包含所需帧的名称来实现。
47、在web-garden和web-farm之间有何不同?
web-garden和web-farm都是⽹络托管系统。唯⼀的区别是web-garden是在单个服务器中包含许多处理器的设置,⽽web-farm是使⽤多个服务器的较⼤设置。
48、如何分配对象属性?
将属性分配给对象的⽅式与赋值给变量值相同。例如,表单对象的操作值以下列⽅式分配为“‘submit”:Document.form.action
=“submit”
49、在JavaScript中读取和写⼊⽂件的⽅法是什么?
可以通过使⽤JavaScript扩展(从JavaScript编辑器运⾏),打开⽂件的⽰例来完成:
fh = fopen(getScriptPath(), 0);
50、在JavaScript中如何使⽤DOM?
DOM代表⽂档对象模型,并且负责⽂档中各种对象的相互交互。DOM是开发⽹页所必需的,其中包括诸如段落,链接等对象。可以操作这些对象以包括添加或删除等操作,DOM还需要向⽹页添加额外的功能。除此之外,API的使⽤⽐其他更有优势。
51、JavaScript中如何使⽤事件处理程序?
事件是由⽤户⽣成活动(例如单击链接或填写表单)导致的操作。需要⼀个事件处理程序来管理所有这些事件的正确执⾏。事件处理程序是对象的额外属性。此属性包括事件的名称以及事件发⽣时采取的操作。
52、解释延迟脚本在JavaScript中的作⽤?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论