首页 > 试题广场 >

在空白处填入适当的代码使输出结果成立

[填空题]
在空白处填入适当的代码使输出结果成立:
function showMoney( ) {
1
};

var personA = new Object;
var personB = new Object;

personA.money= "100";
personB.money= "150";

personA.showMoney= showMoney;
personB.showMoney= showMoney;


输出结果:
console.log(personA.showMoney( )); //"100"
console.log(personB.showMoney( )); //"150"
推荐
不注意看原代码,没有写 分号。一点要细心。

编辑于 2018-05-03 09:40:58 回复(11)
//题目写的是输出结果,而return是不会输出,只会返回,我的答案让人哭笑不得
console.log(this.money);
//如果把题干改成这样也许会比较没有歧义
console.log(personA.showMoney());//"100"
console.log(personB.showMoney());//"150"

发表于 2015-08-22 14:43:07 回复(21)
没带分号、、也算错。。好吧。。
发表于 2015-09-08 18:19:11 回复(26)
1.personA.showMoney= showMoney;   //showMoney 是函数体
相当于
personA.showMoney =  function showMoney( ) {
return this.money;
};
2.personA.showMoney= showMoney();   //此时personA.showMoney表示的是personA的属性
相当于
personA.showMoney =  return window.money;  //unsigned
发表于 2017-03-25 00:24:59 回复(0)
考的是this指针,一句话,this指针总是指向调用他的对象。
发表于 2017-04-01 08:38:59 回复(0)
在ES6中编写代码并没有严格的要求句尾写分号,而且现在主流的趋势在实现框架的时候已经逐渐将;省略,如return语句即使你不加分号,解析引擎也会为你自动加上,所以严格的来说未加分号不算错误
发表于 2016-11-10 10:37:20 回复(0)
djd头像 djd
呜呜没加分号
发表于 2020-12-25 14:40:20 回复(0)
return this.money;
发表于 2020-04-03 14:08:46 回复(0)
发表于 2019-03-17 16:41:35 回复(1)
emmmm
我这个错在哪
发表于 2019-03-12 17:57:37 回复(0)
多态
发表于 2018-09-04 23:19:07 回复(0)
创建对象,构造函数模式。
发表于 2017-07-21 10:45:46 回复(0)
没有加分号也是错了,难道非要采用eslint规范,严格地写。好吧,其实这样也对
发表于 2017-07-12 21:46:33 回复(0)
忘了切换输入法,在中文输入法下输入的分号,答案错误,大家要注意:
1. 不要忘记分号
2. 切换输入法
估计也只有我这么蠢了,应该都会切换输入法的。。。
发表于 2017-07-04 14:28:06 回复(0)
return this.arguments;不行吗
发表于 2017-05-11 08:44:59 回复(0)
表示填空题即使答对了,也会被判错误。希望修复此问题!
发表于 2017-05-02 14:58:06 回复(0)
我来告诉楼下,写了分号也一样
发表于 2017-04-24 16:43:32 回复(2)
没有console,不会打印好不好
发表于 2017-04-02 21:15:57 回复(0)
在控制台打印console.log(this)的结果:

没有返回值应该是不准确的,函数没有return自动返回undefined;
发表于 2017-02-26 23:41:29 回复(1)

少写个分号算我错?

你的答案 (错误)

1 return this.money
参考答案 return this.money;

发表于 2016-11-09 17:11:58 回复(0)
return this.money;
发表于 2016-11-08 19:34:50 回复(1)