将我的函数转换为构造函数

时间:2019-10-21 14:54:56

标签: javascript function constructor

我基本上在做一个Kata javascript问题,我设法得到了一个能完成工作的函数,除了它不能作为构造函数使用之外,我现在有点迷路了。

我需要确保以下代码与提供的字符串IE配合使用

<!-- language: lang-js -->
  function accum(){
  var boom = s.split("");
  count = 1;

  for (var i = 0; i < boom.length; i++) {
    repeat = count++;
    finalvalue = boom[i].repeat(repeat);
    var capitalizeLetter = finalvalue.charAt(0).toUpperCase() +
      finalvalue.slice(1);
    console.log(capitalizeLetter);
  }
  }

  accum('opportunity');

输出

O p Ppp o rr t Uuuuuuu Nnnnnnnnn ii Ttttttttttt yyyyyyyyyy

3 个答案:

答案 0 :(得分:2)

您要寻找的只是称为常规function。构造函数与类一起使用,因此在这里似乎不适用。

只需像这样包装它:

function myFunction(s) {
  let boom = s.split("");
  count = 1;

  for (var i = 0; i < boom.length; i++) {
    repeat = count++;
    finalvalue = boom[i].repeat(repeat);
    let capitalizeLetter = finalvalue.charAt(0).toUpperCase() +
      finalvalue.slice(1);
    console.log(capitalizeLetter);
  }
}

myFunction("opportunity");

希望这会有所帮助,

答案 1 :(得分:0)

您希望它在页面准备好后能够正常工作吗?

(function() {
   // your function 
})();

答案 2 :(得分:0)

 function f(s) {
        var boom = s.split("");
        count = 1;

        for (var i = 0; i < boom.length; i++) {
            repeat = count++;
            finalvalue = boom[i].repeat(repeat);
            var capitalizeLetter = finalvalue.charAt(0).toUpperCase() +
                finalvalue.slice(1);
            console.log(capitalizeLetter);
        }
    } 
f('this is a string');