小编Jur*_*uri的帖子

如何处理JavaScript中的浮点数精度?

我有以下虚拟测试脚本:

function test() {
  var x = 0.1 * 0.2;
  document.write(x);
}
test();
Run Code Online (Sandbox Code Playgroud)

这将打印结果0.020000000000000004,只应打印0.02(如果您使用计算器).据我所知,这是由于浮点乘法精度的误差.

有没有人有一个很好的解决方案,以便在这种情况下,我得到正确的结果0.02?我知道有类似的功能toFixed或舍入将是另一种可能性,但我想真正打印整个数字没有任何切割和舍入.只是想知道你们其中一个人是否有一些漂亮,优雅的解决方案.

当然,否则我会转到大约10位左右.

javascript floating-point

552
推荐指数
22
解决办法
34万
查看次数

DeploymentItem属性的问题

我目前正在维护一个用C#.net编写的"旧"系统,删除一些过时的功能并进行一些重构.感谢上帝,前一个人写了一些单元测试(MSTests).我对JUnit测试很满意,但对MSTests没有太多帮助.

测试方法有一个DeploymentItem属性,指定一个文本文件,该文件由正在测试的业务逻辑方法解析,而第二个DeploymentItem只指定了一个包含一堆必须部署的TIF文件的路径.

[TestMethod()]
[DeploymentItem(@"files\valid\valid_entries.txt")]
[DeploymentItem(@"files\tif\")]
public void ExistsTifTest()
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

测试工作之前,但现在我不得不更改\ files\tif目录中包含的TIF文件的名称.根据规则,TIF文件名必须匹配特定模式,该模式也由ExistsTifTest()方法检查.现在我不得不更改文件名以使它们适应新的要求,突然之间不再像以前一样部署TIF文件.

有人能给我一个暗示,为什么会发生这种情况或可能是什么原因?如果我在\ files\valid \目录中的"valid_entries.txt"旁边添加一个新的文本文件"my2ndTest.txt",并在测试方法上使用相应的DeploymentItem属性,也会发生同样的事情.该文件未部署?

我通过直接在testrunco​​nfig中定义部署路径来获得现在部署的映像,但我想了解为什么会发生这些事情,或者为什么我的新文件"my2ndTest.txt"在其他人没有部署时会被部署.

c# unit-testing mstest visual-studio deploymentitem

94
推荐指数
8
解决办法
7万
查看次数

Android id命名约定:带有下划线与驼峰情况的小写

我目前正在为Android编写应用程序.现在我发现你不能将资源对象放在drawable文件夹中,并将其命名为"myTestImage.jpg".这会给你一个编译器错误,因为不允许使用camel case语法,所以你必须像"my_test_image.jpg"那样重命名它.

但是你在XML文件中定义的id呢?假设您有以下定义

<TextView android:id="@+id/myTextViewFirstname"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="Firstname" />
Run Code Online (Sandbox Code Playgroud)

这是一个有效的定义,在我的Android模拟器上编译和工作正常,尽管 - 如你所见 - 我在驼峰案例语法中指定了id.

现在,Android示例始终使用小写和下划线.这只是一个命名约定,使用带有下划线的小写的id或者它可能会导致真实设备出现问题吗?

谢谢

mobile android

85
推荐指数
5
解决办法
4万
查看次数

Kibana在"发现"标签中未显示任何结果

我设置了elasticsearch和Kibana来索引我们的应用程序(错误)日志.问题是Kibana不会在"发现"标签中显示任何数据.

现在的情况

  • Elasticsearch启动并运行,响应API
  • 直接在Elasticsearch上执行查询就像http://elasticserver.com:9200/applogs/_search?q=*返回大量结果一样(请参阅下面有关单个查找记录的内容)
  • Kibana已启动并运行,甚至可以找到applogsElasticsearch公开的索引
  • Kibana还显示applogs文档的正确属性和数据类型
  • "发现"标签不显示任何结果......即使将时间段设置为几年......

有任何想法吗??

这是Kibana看到applogs索引的方式:

在此输入图像描述

弹性搜索查询结果对象如下所示:

{
_index: "applogs",
_type: "1",
_id: "AUxv8uxX6xaLDVAP5Zud",
_score: 1,
_source: {
   appUid: "esb.Idman_v4.getPerson",
   level: "trace",
   message: "WS stopwatch is at 111ms.",
   detail: "",
   url: "",
   user: "bla bla bla",
   additionalInfo: "some more info",
   timestamp: "2015-03-31T15:08:49"
 }
},
Run Code Online (Sandbox Code Playgroud)

.. 以及我在发现标签中看到的内容:

在此输入图像描述

elasticsearch kibana-4

77
推荐指数
4
解决办法
5万
查看次数

最佳实践:C#扩展方法命名空间和提升扩展方法

我知道已经存在一个帖子,描述几乎相同,但我认为我的有点不同.

我想知道的是如何在分配命名空间方面组织扩展方法.目前 - 对于我们框架中的扩展方法 - 我使用以下命名空间模式

  • MyCompany.Web.Utils

在里面我有扩展方法类.这对我来说很好,但缺点是我们的软件开发人员无法立即看到扩展器.考虑我有一个StringExtender类的情况,它提供了一个非常方便的扩展方法"In",它扩展了String对象.使用带有上述命名空间的扩展方法,我们的程序员除非明确包含其命名空间,否则不会看到扩展方法.相反,如果我将扩展方法放在System命名空间中,每个人都会立即看到它,但我读到这是不好的做法.

所以我的问题是你如何推广你的开发人员使用的扩展方法.

c# extension-methods

40
推荐指数
3
解决办法
2万
查看次数

UnitTesting静态类

场景.语言C#,使用VS2008单元测试框架进行单元测试

我有一个带静态构造函数的静态类和2个方法.我编写了4种测试方法来测试整个类.我的静态构造函数有一些重要的初始化.

现在,如果我串联运行所有4个单元测试用例,则只在开始时调用静态构造函数.在每个测试用例结束时,没有这样的事情

称为静态析构函数,因此构造函数中的状态信息也会被传递到下一个单元测试用例.解决方法是什么?

.net c# unit-testing

20
推荐指数
3
解决办法
2万
查看次数

免费的C#指标计算库(DLL)

我想问你是否知道一些计算CK指标的免费C#库(dll)(主要是Cyclomatic Complexity).

对于我打算做的项目,我需要这样做.我知道已经有一些完成的解决方案可以计算CK指标并以各种形式显示给你,但我需要的是我可以在我的应用程序中使用的解决方案.所以在开始写自己之前我首先想问你.

谢谢

c# code-metrics

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

任务失败,因为找不到AL.exe,

编译项目时出现以下错误:

任务失败,因为找不到"AL.exe",或者未安装正确的Microsoft Windows SDK.任务是在注册表项的InstallationFolder值中指定的位置下的"bin"子目录中查找"AL.exe" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v6.0A.您可以通过执行以下操作之一来解决问题:

  1. 安装适用于Windows Server 2008和.NET Framework 3.5的Microsoft Windows SDK.
  2. 安装Visual Studio 2008.
  3. 手动将上面的注册表项设置为正确的位置.
  4. 将正确的位置传递给任务的"ToolPath"参数.

当我在我的UnitTest项目中将资源文件添加到我的文件夹时,会出现此错误.我的程序不直接使用这些资源文件进行本地化,它们就像普通文件一样.我需要它们来对我的程序中的一些逻辑进行单元测试,这些逻辑使用ResXResourceReader.

有人能解释一下为什么会出现这个错误吗?

编辑:安装Windows SDK解决了该问题,如错误中所述.但我仍然想知道错误出现的原因.我对我没有意义.

c# visual-studio-2008

13
推荐指数
2
解决办法
3万
查看次数

Visual Studio在执行文件管理操作时在哪里搜索txt文件?

我知道这是一个noob问题,但是我之前和之后只想访问.txt文件,我曾经使用过Python.所有你需要做的就是确保txt文件在同一个目录中.我在下面有以下C++代码,但它没有找到我在桌面上保存的Numbers.txt文件.我在文件中的所有内容都是一行double类型的数字.我想要做的就是找到文件中所有数字的平均值.程序运行正常,但它不能正确打印输出.通过打印输出[0]检查打印到输出的内容后,我发现该文件没有将其内容复制到数组中.有人可以为我清除这个小问题,或者至少指出我正确的方向指向一个好的教程?

int main() {
    cout << "Getting File Information..." << endl;
    ifstream file;
    char output[100];
    //int x;

    file.open("Numbers.txt", ios::in);    // open file

    cout << "Opened File Successfully ****************" << endl;
    file >> output;              // empty file contents into output
    cout << output;              // print out contents of file
    cout << "Should have printed out results by now" << endl;
    //file >> x;

    file.close();

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ fstream file-management ifstream visual-studio

9
推荐指数
2
解决办法
5万
查看次数

ACRA就像C#.NET的崩溃报告库一样

对于Android,存在一个名为ACRA的开源库,它允许您自动报告应用程序崩溃和(可选日志)到Google文档电子表格自定义提交服务URL.

C#.NET有类似的库吗?开源是首选.

.net c# error-handling exception-handling

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