<!DOCTYPE html>
<html lang="en">
<head>
<meat charset="UTF-8"/>
<title>Document</title>
<style>
</style>
</head>
<body>
<script>
var num = 123;
document.write(num);
</script>
</body>
<html>
输出字符串类型的123
因为隐式操作
document.write(num.toString());
解释一下这个操作
num.toString 原始值不能加属性,类包装一下
(new Number(num).toString),然后通过
proto : Number.prototype,
调用Number.prototype中的toString方法
验证方法
var num = 123;
num = Object.create(null);
//使原型为空,就无法调用原型里的toString
document.write(num);
//那么这个时候document.write的隐式操作无法完成,程序报错
var num = 123;
num = Object.create(null);
num.toString = function (){
return ‘小仙女小帅哥’;
}
//自己定义toString方法
document.write(num);
//此时打印小仙女小帅哥