JavaScript关键字总结
js关键字(⼀共29个关键字),保留字(就是预备役关键字,不可以⽤作变量,函数名,对象名等)
break:⽴即结束语句,并跳出语句,进⾏下个语句执⾏,当即跳出所在的循环。
case:switch表达式与case值作⽐较,相等时会执⾏该case中的代码块。后⾯跟break,阻塞代码继续向下执⾏。
catch:语句允许你处理错误。
continue:停⽌当前语句,并从头执⾏该语句,直接开始下⼀循环。
debugger:⽤于停⽌执⾏ JavaScript,并调⽤ (如果可⽤) 调试函数。debugger 类似于在代码中设置断点。
default:有两种使⽤情况,在 switch中,default只有在case匹配失败的时候才会执⾏,在export 中,导出单个值或需要模块的回掉值可以使⽤默认导出。
delete:⽤于删除对象的某个属性;如果没有指向这个属性的引⽤,那它最终会被释放。delete object.property,delete object['property']
do:do/while - 同样当指定的条件为 true 时循环指定的代码块,但该循环在判断条件前会执⾏⼀次代码块。
else:使⽤ else 来规定要执⾏的代码块,如果相同的条件为 false
false:布尔值
finally:使你能够执⾏代码,在 try 和 catch 之后,⽆论结果如何。
for:1.常规的for(var i=0;i<length;i++)
2.for-in:for(var item in list)
function:定义函数
if:使⽤ if 来规定要执⾏的代码块,如果指定条件为 true
in:for……in⽤于遍历⼀个对象的属性,把对象的属性名和属性值都提出来
instanceof:instanceof 运算符⽤来测试⼀个对象在其原型链中是否存在⼀个构造函数的 prototype 属性。语法:object instanceof constructor
new:对象创建表达式。new 运算符是⽤来实例化⼀个类,从⽽在内存中分配⼀个实例对象。可以产⽣原对象的⼀个实例对象,⽽这个实例对象继承了原对象的属性和⽅法。因此,new存在的意义在于它实现了javascript中的继承,⽽不仅仅是实例化了⼀个对象!
null:表⽰⼀个特殊值,常⽤来描述“空值”。对null执⾏typeof预算,结果返回字符串“object”,也就是说,可以将null认为是⼀个特殊的对象值,含义是“⾮对象”。但实际上,通常认为null是它⾃有类型的唯⼀⼀个成员,它可以表⽰数字、字符串和对象是“⽆值”的。
return:是函数返回语句,但是返回的同时也将函数停⽌。
switch:switch表达式与case值作⽐较,相等时会执⾏该case中的代码块。后⾯跟break,阻塞代码继续向下执⾏。
this:1.普通函数中的this window
2.构造函数中的this 是当前构造函数创建的对象在new这个构造函数的时候会在内存中创建⼀个对象,此时会让 this指向刚创建好的这个对象
3.⽅法中的this ⽅法所属的对象,谁调⽤这个⽅法this 就指向谁
4.事件处理函数中的this 事件源谁调⽤的该事件this就指向谁在这⾥就指向事件源this
throw:语句允许你创建⾃定义错误。(抛出错误)
true:布尔值
try:语句使你能够测试代码块中的错误。
typeof:typeof 是⼀个⼀元运算,放在⼀个运算数之前,运算数可以是任意类型。它返回值是⼀个字符串,该字符串说明运算数的类型。typeof 运算符返回⼀个⽤来表⽰表达式的数据类型的字符串。typeof其实就是判断参数是什么类型的实例,就⼀个参数。typeof ⼀般只能返回如下⼏个结果:"number"、"string"、"boolean"、"object"、"function" 和 "undefined"
var:声明⼀个变量。let语句在块作⽤域中声明⼀个局部变量,let语句允许我们创建⼀个变量,其范围仅限于使⽤它的块⾥。ES6 明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从⼀开始就形成了封闭作⽤域。凡是在声明之前就使⽤这些变量,就会报错。总之,在代码块内,使⽤let命令声明变量之前,该变量都是不可⽤的。这在语法上,称为“暂时性死区”(temporal dead zone,简称 TDZ)。ES6的let让js真正拥有了块级作⽤域,也是向这更安全更规范的路⾛,虽然加了很多约束,但是都是为了让我们更安全的使⽤和写代码。
void:javascript:void(0)指的是该操作符指定要计算⼀个表达式但是不返回值。
while:while - 当指定的条件为 true 时循环指定的代码块,do/while - 同样当指定的条件为 true 时循环指定的代码块,但该循环在判断条件前会执⾏⼀次代码块。
with:引⽤⼀个对象,使访问属性与⽅法更加⽅便(只能访问与修改属性,不能增加属性与⽅法)。
javascript说明***********************************************************************************************************************************************
在 break,continue和return 三个关键字中
break,continue是化为⼀类的,return 是函数返回语句,但是返回的同时也将函数停⽌。
相同之处:三个都会将此时进⾏的语句停⽌。
不同之处:1、break:是⽴即结束语句,并跳出语句,进⾏下个语句执⾏。
2、continue:是停⽌当前语句,并从头执⾏该语句。
3、return:停⽌函数。
4、使⽤的语句环境不⼀样,break和continue是⽤在循环或switch语句中,return是⽤在函数语句中。
try和catch的⽤法
try catch 错误处理;
执⾏规则:⾸先执⾏try中的代码如果抛出异常会由catch去捕获并执⾏如果没有发⽣异常 catch去捕获会被忽略掉但是不管有没有异常最后都会执⾏。
try 语句使你能够测试代码块中的错误。
catch 语句允许你处理错误。
throw 语句允许你创建⾃定义错误。(抛出错误)
finally 使你能够执⾏代码,在 try 和 catch 之后,⽆论结果如何。
try 和catch⼀般是在预计某段代码可能会出错(⽐如浏览器兼容问题)或者想故意利⽤这种错误来达成⽬的(这其实是⼀种偷懒的⾏为)时,就可以把这段代码放⼊try内,然后当出现错误时就会⾃动去执⾏catch⾥的代码。
switch和case⽤法
请使⽤ switch 语句来选择多个需被执⾏的代码块之⼀。
语法
switch(表达式) {
case n:
代码块
break;
case n:
代码块
break;
default:
默认代码块
}
}
代码解释:
计算⼀次 switch 表达式
把表达式的值与每个 case 的值进⾏对⽐
如果存在匹配,则执⾏关联代码
do/while 循环是 while 循环的变体。该循环会执⾏⼀次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。JavaScript ⽀持不同类型的循环:
for - 循环可以将代码块执⾏指定的次数。
for/in - 循环遍历对象的属性
while - 当指定的条件为 true 时循环指定的代码块
do/while - 同样当指定的条件为 true 时循环指定的代码块,但该循环在判断条件前会执⾏⼀次代码块
void
void 运算符对表达式求值,并返回 undefined。
js中的void后跟⼀个表达式 void(expression),他会执⾏这个表达式,然后返回undefined。这⾥表达式外的括号可以省略。
使⽤void的主要地⽅就是a标签,像这样:
<a href = "javascript:void(0);"/>
这样⼀来,会让点击后不执⾏任何操作,且不会刷新页⾯。
这⾥不这么写也可以,写成这样:
<a href = "javascript:"/>
也是相同的效果,不知道第⼆种有什么弊端。
也有⼈在代码中使⽤void 0来代替undefined,因为undefind不是保留字。所以在某些浏览器下,undefind的值可能会被修改。不过这种情况,学习jquery的⽅法就可以解决。
(function(p1,p2,undefind){})(p1,p2);
不传第三个参数,那么函数中的undefined就是undefined。
还见过⼀种在void后写语句的,像这样:
return void ;
但是函数不指定return的值的话会默认返回undefined。
29个关键字
break delete function return typeof
case do if switch var
catch else in this void
continue false instanceof throw while
debugger finally new true with
default for null try
30个预定义变量和全局函数
arguments encodeURI Infinity Number RegExp
Array encodeURIComponent isFinite Object String
Boolean Error isNaN parseFloat SyntaxError
Date eval JSON parseInt TypeError
decodeURI EvalError Math RangeError undefined
decodeURIComponent Function NaN ReferenceError URIError
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论