如有错误,请指出。持续更新中。。。
1、区分大小写
var a = 1; A = 2; alert(a); // 1
2、数据类型有String、Number、Boolean、undefined、null、Object
3、没有块级作用域
function test(){ for(var i=0;i<10;i++){ //.... } alert(i); } test(); // 104、所有的变量声明都在范围作用域的顶部,但变量赋值并未提前
alert(a in window); // true alert(a); // undefined var a=1;
5、函数声明会覆盖变量声明,但不会覆盖变量赋值
function a() { return 1; } var a; alert(typeof (a)); // "function"
function a() { return 1; } var a=1; alert(typeof (a)); // "number"---------------------------------------------- 2014-03-11 更新 ----------------------------------------------
6、null,undefined,NaN
alert(null == undefined); // true alert(null !== undefined); // true alert(NaN!==NaN); // true alert(typeof(null)); // object alert(typeof(undefined)); // undefined
7、parseInt有两个参数,第二个参数表示进制,而且其范围在2~36之间,包括边界
alert(parseInt(0,1)); // NaN alert(parseInt(0,37)); // NaN alert(parseInt(32,2)); // NaN 数本身就不符合进制要求 alert(parseInt(010)); // 8 // 如果string 以 0 开头,那么ECMAScript v3允许 parseInt()的一个实现把其后的字符解析为八进制或十六进制的数字。 // 如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。 alert(parseInt(010,10)); // 8 // 对于以0开头的,设置第二个参数无效了,默认就是8进制 alert(parseInt(0x10,10)); // 16
8、substr(start,length),
substring(from,to),