Javascript面试题&知识点汇总
2024-09-01 07:38:32
问题&答案
什么时候 a 1 && a 2 && a==3 为 true?
var a = {
i: 1,
toString: function () {
return a.i++;
}
}
- 关键点在于==在比较的时候会进行类型转换,上例会调用a.valueOf(a.toString())来将a转换成Number数据类型,因此改写a的toString方法即可。
var a = [1,2,3];
a.join = a.shift;
- 同样的数组a在进行类型转换的时候会调用toString()的方法,而a.toString()其实调用的是a.join('')方法,因此修改a.join方法使其指向shift方法让其每次只输出第一个值,并且输出后从数组移除即可。
var val = 0;
Object.defineProperty(window, 'a', {
get: function() {
return ++val;
}
});
- 使用Object.defineProperty()方法为window添加a属性,修改其getter方法,使其依次返回val变量值。
参考资料
结束语
尺蠖之屈,以求信也;龙蛇之蛰,以存身也。与时屈伸。柔从若蒲苇,非慑怯也;刚强猛毅,靡所不信,非骄暴也。
最新文章
- php知识案列分享
- IE9下WebUploader上传图片跨域问题
- 哈夫曼树(一)之 C语言详解
- STL vector按多字段值排序
- Android安装失败 Installation error code: -110
- 【WPF】控件使用-宽度自动适应窗口大小
- FTP+SFTP工具类封装-springmore让开发更简单
- C# - DataValid数据验证类
- HDU 2056 Rectangles
- 0-C相关01:NSlog函数介绍。
- Jquery与DOM对象
- HDU 1852 Beijing 2008 数论
- Struts2中获取HttpServletRequest,HttpSession等的几种方式
- java多线程系列(四)---Lock的使用
- HTTP入门
- 前端工具mock的使用 - 造数据模拟网络请求
- Zookeeper~Linux环境下的部署
- [20190329]探究sql语句相关mutexes补充2.txt
- CCPC-Wannafly Winter Camp Day1 Div1 - 夺宝奇兵 - [贪心+线段树]
- 可恶的 0xc0000005异常