面试的时候被问到这样一个问题 "1"==1, 数据类型转化的规则是什么,如何判断呢

面试的时候被问到这样一个问题 "1"==1,这个判断条件在执行时会将"1"转换成数字类型1,但是如何验证呢?(我心里想的是通过代码验证吗?因为不知道如何验证就game over了),又一次赶脚自己智商个被碾压了。

如果是对象和 {} ==1,对象会转换成原始值,这个可以通过定义对象的valueOf方法验证,

{valueOf:()=>{console.log("test")}} ==1;

但是象题目中说的,如何验证字符串转化为数字了呢?


沧海一幻觉
浏览 550回答 1
1回答

明月笑刀无情

Number.prototype.toString = function (v) {  console.log('number');  return v; }String.prototype.valueOf = function (v) {  console.log('string');  return '1'; }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Node.js