1、在javascript中的保留字:break delete function return typeof case do if swith var catch else in this void continue false instanceof throw while debugger finally new true with default for null try
下面的关键字在普通的JavaScript代码中是合法的,但是在严格模式下是作为关键字:implements let private public yield interface protected static
2、在return、break、continue和随后的表达式之间不能有换行。
return false; 关于分号符,我觉得最重要的是掌握js代码的规范性,分号是一个语句的结束标识。
3、转译符 \在JavaScript中具有特殊的意义,表示转译(escape sequence)也可以叫做逃逸符。
比如说 alert(‘you can\'t click it’)
4、JavaScript中的数据类型分为两种:原始类型和对象类型。原始类型是,字符串,数字,布尔值,undefined和null。对象的转换方式有toString和valueOf两种方法。
JavaScript中的函数作用域
function test(){ if(typeof i=="number"){ var j=0; for(var k=0; k<10;k++){ console.log(k); } console.log(k); } console.log(j); } test();
var scope="global"; function test1(){ console.log(scope); var scope="local"; console.log(scope); } test1()
很多人都会认为,第一次打印出来的值为“global”,第二次打印出来的值为“local”。这个想法是错误的,虽然scope是一个全局变量,由关键字var声明,但是在JavaScript的函数作用域中,局部变量的优先级是高于全局变量的。第一次的值为“undefined”,这也就是将变量在函数体内置顶。
5、通过给语句定义标签,就可以在程序的任何地方引用该语句。而continue和break是JavaScript中唯一可以使用语句标签的语句。maniloop:while(){ ....... continue maniloop}
6、严格模式(use strict)和非严格模式的主要区别
a、在严格模式下,不能使用with语句
b、在严格模式下,所有的变量都要声明
c、在严格模式下、调用的函数中的一个this值是undefined
var hasStrictMode=(function(){“use strict”; return this ===undefined}())