11条javascript知识

1.局部变量和全局变量

var操作符定义的变量将成为定义该变量作用域中的局部变量。这个局部变量会在函数退出后销毁。不同于其他语言,javaScript不存在块级作用域。

全局变量就是window对象的属性,所有未定义的变量和在最外层(非函数体内)的变量都拥有全部作用域。如非必要,尽量避免在函数体内使用全局变量。

 function test(){

     for(var i=0;i<10;i++) {
var sum=i;
}
alert(sum);//javaScript作用域是函数决定的。提示为10
j=1;//未明确定义的变量是全局变量
alert(j==window.j)//全局变量是window的属性,提示true
}

2.typeof 是操作符

3.parseInt() 转换字符串为数字。

paseFloat()不能识别16进制,0xf会返回0

var sum1=parseInt("1234blue");//
var sum2=parseInt("0xf");//parseInt可以识别16进制,15
var sum2=parseInt("f",16);//最好用第二个参数声明16进制
var sum3=parseInt("true");//NaN

4.toString()指定基数的用法

var num=10;
num.toString();//'10'
num.toString(2);//'1010'
num.toString(8);//'12'
num.toString(16);//'a'

5.Object 类型

Object类型都具备下列方法

a.Constructor:保存用于创建当前对象的函数。

b.hasOwnProperty(propertyName):检查给定属性在当前对象实例中(而不是在实例原型中)是否存在。

例:o.hasOwnProperty(‘name’);

c. isPrototypeOf(object):检查传入对象是否是另一对象原型。

d. propertyIsEnumerable(propertyName):检查给定属性能否使用for-in语句枚举。

e . toLocaleString():返回对象字符串表示

f .toString():返回对象字符串表示

g.valueOf():返回对象字符串,数值或布尔值表示。

6.布尔操作符

逻辑与(&&)和逻辑非(||)可以作用于任何数据类型,不仅仅是布尔值。它们是短路操作符。

7.尽量使用全等(===)或不全等(!===)操作符

8. for in 枚举对象属性

for(var property in expression) statement;

9.label:statement

例子:

start:

for(var i=0;i<10;i++){}

10.with语句(不建议使用)

将代码作用域设置到一个特定对象中

with(expression)statement;

var qs=location.search.subString(1);
var hostName=location.hostname;
var url=location.href;
//等同
with(location) {
var qs=search.subString(1);
var hostName=hostname;
var url=href;
}

11.switch使用全等操作符,不会发生类型转换

12.函数通过数组接受参数。可通过arguments来访问。

命名的参数只提供便利,而不是必须的。解析器不会验证命名参数。

13.函数没有重载。如果定义两个名字相同的函数,该名字属于后定义的函数。

http://www.cnblogs.com/roucheng/

上一篇:[转]DOM 中 Property 和 Attribute 的区别


下一篇:算法系列:FFT 002