码迷,mamicode.com
首页 > 其他好文 > 详细

interview experience

时间:2015-03-10 13:53:37      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

[] == ![];
true
  [] == !Boolean([]); 逻辑运算需进行数据类型转换
  [] == !true 0 NaN ‘‘ null undefined 在boolean中会变成false 其他为true
  [] == false;  
  [] == 0; 如果其中一项为bool值,另外一项不是,则将其转换成数字
  toPrimitive([]) == 0; 如果一项为对象,另一项为数字或字符串,则尝试将对象转换成primitiveValue原始值
  [].valueOf() == 0; 首先尝试调用 valueOf 得到自身 仍然是对象类型
  [] == 0;  
  [].toString() == 0; 再尝试调用 toString
  ‘‘ == 0; Array.toString返回一个字符串,使用逗号连接数组中所有元素
  0 == 0 字符串和数值进行比较时,将字符串转换成数值
  0 === 0 两边数据类型一致时,执行严格等运算
    true   得到结果true

var a = function( k ) { return false; }; a() && [] == ![];
false	

var k = true; var a = function( k ){ var k = k && true; return k; }; a() && [] == ![];
undefined

var k = true; var a = function( k ){ var k = k && true; return k; }; a() && [] == ![];
a=function(){return k};

var arr = [ 1, 2 ]; arr.b = "123"; arr.toString();
‘1,2‘

var o = { a : 2, b : function(){ this.a = 3; (function(){ alert( this.a ); // 输出==> this.a = 4; })(); alert( this.a ); // 输出==> return { d : o.a + 3 }; } }; o.b(); o.b.d;

alert undefined, alert 3, o.b.d undefined

var i = 1, j = m = 0; function a ( k ){ return k = k + 1; } j = a( i ); function a ( k ){ return k = k + 3; } m = a ( i ); j m

j 4 m 4

alert( typeof a); function a(){ alert( "a.function" ); } var a = "a.string"; alert( a );

alert function alert a.string

var o = { a : function(){ alert ( this.c ); }, c : " Hunteron " }; ( f = o.a )();

alert undefined

interview experience

标签:

原文地址:http://www.cnblogs.com/social/p/4325732.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!