今天一位刚毕业的同事问了我一个问题,为什么这段代码执行结果是-1.代码如下: var o = { valueOf: function(){ return -1; } }; o = +o; 当时我也是懵逼的,纳尼?没有调用valueOf方法,他怎么自己执行了.经过网上查阅,最终知晓了原因. valueOf()方法和toString()方法是一样的,都会在后台进行隐式的调用,在 o = +o时,等号右边就已经调用了valueOf(),相当于 o = +(-1):所以,最终结果o为-1. 谨以此纪念长…
1.装箱和拆箱: 装箱:把基本数据类型转化为对应的引用数据类型的操作: var num = 123 // num var objNum = new Num(123) // object console.log(typeof objNum) // null 拆箱:将引用类型对象转换为对应的值类型数据对象: valueOf() var objNum = new Number(132) console.log(typeod objNum.valueOf()) // 123 number js toPr…
js中settimeout方法加参数的使用. 简单使用看w3school 里面没有参数调用, 例子: <script type="text/javascript"> function timedMsg() { var a ="dd"; var t=setTimeout(function(){ cao(a);},3000) } function cao(a) { alert(a); } www.jbxue.com </scrip…