三元运算符 计算公式
<script type="text/javascript">
var b=5;
(b == 5) ? a="true" : a="false";
document.write(" --------------------------- "+a);
</script>
结果: --------------------------- true
条件 ? 结果1 : 结果2;.
条件正确 选择结果1
条件错误 选择结果2
instanceof和typeof都能用来判断一个变量是否为空或是什么类型的变量。
typeOf()
JS中的变量是松散类型(即弱类型)的,可以用来保存任何类型的数据。
typeof 可以用来检测给定变量的数据类型,可能的返回值:1. 'undefined' --- 这个值未定义;
2. 'boolean' --- 这个值是布尔值;
3. 'string' --- 这个值是字符串;
4. 'number' --- 这个值是数值;
5. 'object' --- 这个值是对象或null;
6. 'function' --- 这个值是函数。
var aa = 'test string';alert(typeof aa); // 'string'
alert( typeof 90); // 'number'对于Array,Null等特殊对象使用typeof一律返回object,这正是typeof的局限性。
var a=new Array();if (a instanceof Object){}// ture
window instanceof object ;// false
alert(typeof(window) 会得 object
instanceof测试的object是指js语法中的object,不是指dom模型对象。
使用typeof会有些区别
hasOwnProperty 与 isPrototypeOf 的区别
isPrototypeOf是用来判断要检查其原型链的对象是否存在于指定对象实例中,是则返回true,否则返回false。
hasOwnproperty 判断同一个层次上的
isPrototypeOf 可以判断 原形链 function 里面的 var
参考: http://www.cnblogs.com/jenry/archive/2010/12/08/1900150.html