js学习笔记1
1.== 等于 ===完全等同
== 要求两个参数的比较js自动做类型转换后再比较(包括了 boolean类型 null 和undefined)
=== 两个参数如果类型不一致就返回 false
2.js里面字符串不属于基本类型也不属于引用类型
原因:2.1:字符串不属于基本类型是因为没有固定的长度。
2.2:字符串不属于引用类型是因为它没在堆中储存。一个字符串a赋给另外一个字符串b,如果对b字符串改变 而a不会改变。
两个字符串的比较的时候才能基本类型的方式来比较。
3.instanceof
var array=new Array();
if(array instanceof Array )
判断array是否是Array的实例。 返回true
4.typeof 运算符
var i=0;
var s="string";
var date=new Date();
写法1.typeof(i) 返回 number;
写法2.typeof i 返回 number;
typeof(s) 返回 string;
typeof(date) 返回 object;
var a=function(){return 2};
typeof(a) 返回 function;
null 属于 Object
undefined 属性 undefined
typeof 返回的类型undefined string number object boolean function..
如果在未知的情况下想得到一个变量属于什么类型:
var variable;
var type=Object.prototype.toString.apply(variable);//return [Object undefined]
js权威指南上P.101 5.10.2