请实现下面的链式调用函数,以使其能够实现链式调用

2018-10-10  本文已影响0人  我的天气很好啦

滴滴笔试
🍞环境:牛客的编译环境
🍰语言:JavaScript
☕️难点:实现链式调用的方法一开始不懂,后来发现只要return this即可。
🍊题目:时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
仅限Javascript语言:

请实现下面的链式调用函数,以使其能够实现链式调用
var num = new Sub(0).add(100).add(50).add(-30).getResult();
console.log(num) ==> 120


var Sub = function(initValue) {
//请在此处编写你的代码,其他部分请勿修改,否则不记分。
//begin

//end
}
// 以下代码请勿修改
var s = read_line()
print(eval(s))

输入
Sub为一个function,请补充Sub内的逻辑部分

使其能够链式调用,初始值默认为0,链式调用add方法进行数字累加,如果add方法传入的数字非法则不进行累加
最终调用getResult()可以获得累加的结果
输出
最终调用getResult()可以获得累加的结果,将累加的数字返回即可

样例输入
new Sub(0).add(100).add(50).add(-30).getResult();
样例输出
120

🌟解题思路:
最后再返回第0个结点。
🍇我的代码:

var Sub = function(initValue) {
        //请在此处编写你的代码,其他部分请勿修改,否则不记分。
        //begin
            this.value = initValue;
            this.add = function(num){
                if(typeof num == "number"){
                    this.value += num;
                }
                else{
                    this.value++;
                }
                return this;
            };
            this.getResult = function(){
                return this.value;
            };
            return this;
        //end
        }
上一篇 下一篇

猜你喜欢

热点阅读