小编neo*_*pir的帖子

在迭代数组时Supertest双回调

作为一个学习练习,我正在尝试使用Node和Express运行一个版本的Bowling Game kata,我看到了一个奇怪的问题.我可以使用一些帮助来理解为什么来自比我更了解Node和Express的人.

在尝试使攻击测试用例工作的同时编写攻击测试用例之后,当我尝试在命令行使用mocha运行以下测试时,我得到以下超级错误:"Uncaught TypeError: undefined is not a function" at /Users/cdurfee/bitbucket/neontapir/node_modules/supertest/lib/test.js:125:21.

但是,如果我在game.js(total += rolls[ball + 2];)中注释掉这个看似无关紧要的行,就没有失败,但当然行为是错误的.我怀疑这是一个数组出界问题,但我不知道一个很好的方法来解决这个问题.

这是两个文件的全部内容和mocha的控制台输出.

08:55 $ mocha --reporter spec

  Scoring a bowling game
    gutter game
      ? should return 0 
    single pin game
      ? should return 20 
    spare
      ? should return 16 after spare and a 3 
    strike
      ? should return 24 after strike, 4 and a 3 
      1) should return 24 after strike, 4 and a 3
double …
Run Code Online (Sandbox Code Playgroud)

mocha.js node.js express supertest

2
推荐指数
1
解决办法
4174
查看次数

如何使用切片生成用户名

我试图通过使用切片方法生成用户名.我正在尝试使用用户的名字和姓氏来生成用户名.似乎无法使其发挥作用.

我哪里错了?

<html>
<body>

    <script>
    function myFunction() {
        var Firstname = document.getElementById("Firstname");  
        var LastName = document.getElementById("LastName");   
        var nameId = (Firstname.slice(1,3)+LastName.slice(0,3));
    }

    </script>

   <p><input type="text" name="Firstname" id="Firstname" ></p><br/>
   <p><input type="text" name="LastName" id="LastName" ></p> 
   <p id="nameId"></p>
   <button onclick="myFunction()">Send</button>


</body>
</html>
Run Code Online (Sandbox Code Playgroud)

html javascript slice

2
推荐指数
1
解决办法
518
查看次数

如何将具有out参数的方法分配给ExpandoObject?

我正在尝试使用此签名为ExpandoObject分配方法(函数):

public List<string> CreateList(string input1, out bool processingStatus)
{
  //method code...
}
Run Code Online (Sandbox Code Playgroud)

我尝试过这样的代码,下面的代码不能编译:

dynamic runtimeListMaker = new ExpandoObject();
runtimeListMaker.CreateList =
     new Func<string, bool, List<string>>(
           (input1, out processingStatus) =>
                {
                     var newList = new List<string>();

                     //processing code...

                     processingStatus = true;
                     return newList;
                });
Run Code Online (Sandbox Code Playgroud)

不幸的是我无法更改CreateList签名,因为它会破坏向后兼容性,因此重写它不是一个选项.我试图通过使用委托解决这个问题,但在运行时,我得到了"无法调用非委托类型"异常.我想这意味着我没有正确分配代表.我需要帮助使语法正确(委托示例也可以).谢谢!!

c# dynamic-language-runtime expandoobject

1
推荐指数
1
解决办法
797
查看次数

如何从枚举成员中获取DescriptionAttribute值

我有一个枚举类型

public enum DataType:int
    {   
        None = 0,
        [Description("A")]
        Alpha = 1,
        [Description("N")]
        Numeric,
        [Description("AN")]
        AlphaNumeric,
        [Description("D")]
        Date
    }
Run Code Online (Sandbox Code Playgroud)

如何检索Alpha的描述属性值.

例如(理想):DataType.Alpha.Attribute应该给"A"

c# attributes

1
推荐指数
1
解决办法
3086
查看次数

C#HashSet Generic允许重复

在MSDN上读取HashSet,它说HashSet<T>,如果T实现,IEquatable<T>那么HashSet使用它IEqualityComparer<T>.Default.

所以,让班级的人:

public class Person : IEquality<Person>
{
    private string pName;
    public Person(string name){ pName=name; }
    public string Name
    {
        get { return pName; }
        set
        {
            if (pName.Equals(value, StringComparison.InvariantCultureIgnoreCase))
            {
              return;
            }
            pName = value;
        }
    }

    public bool Equals(Person other)
    {
        if(other==null){return false;}
        return pName.Equals(other.pName, StringComparison.InvariantCultureIgnoreCase);
    }

    public override bool Equals(object obj)
    {
        Person other = obj as Person;
        if(other==null){return false;}
        return Equals(other);
    }

    public override int GetHashCode(){return pName.GetHashCode();}

    public override string …
Run Code Online (Sandbox Code Playgroud)

c# hashset

1
推荐指数
1
解决办法
1408
查看次数

在第n次出现令牌后插入字符串

我在字符串变量中有以下HTML myHtml.该myHTML变量由某些函数填充HTML,该函数返回HTML,如下所示

string myHtml="<table> <tr id='12345'><td>Hello1</td></tr> <tr id='12346'><td>Hello2</td></tr> </table>";
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我的返回数据中有两行,我需要在上面的行之间添加另一行id=1234678.那么myHtml可能看起来像

myHtml="<table> <tr id='12345'><td>Hello1</td></tr> <tr id='1234678'><td>Hello New</td></tr>  <tr id='12346'><td>Hello2</td></tr> </table>";
Run Code Online (Sandbox Code Playgroud)

我想通过在诸如indexOf等字符串操作的帮助下附加HTML来实现它,但我无法弄清楚如何执行此操作.

html c# string

0
推荐指数
1
解决办法
564
查看次数