问题列表 - 第28767页

如何修复jslint错误'不要在循环中创建函数'.

我正在努力使我们所有的JS代码都通过jslint传递,有时需要进行大量的调整以获得遗留代码的选项,以便稍后正确修复它.

jslint有一件事抱怨我没有工作.那就是当使用这样的结构时,我们得到错误'不要在循环中创建函数'.

for (prop in newObject) {
    // Check if we're overwriting an existing function
    if (typeof newObject[prop] === "function" && typeof _super[prop] === "function" &&
        fnTest.test(newObject[prop])) {
        prototype[prop] = (function(name, func) {
            return function() {
                var result, old_super;

                old_super = this._super;
                this._super = _super[name];
                result = func.apply(this, arguments);
                this._super = old_super;

                return result;
            };
        })(prop, newObject[prop]);
    }
}
Run Code Online (Sandbox Code Playgroud)

此循环是经典继承的JS实现的一部分,其中扩展现有类的类在调用扩展类的成员时保留扩展类的超级属性.只是为了澄清,上面的实现受到了John Resig的博客文章的启发.

但是我们还在循环中创建了其他函数实例.

到目前为止,唯一的解决方法是从jslint中排除这些JS文件,但我们希望使用jslint进行代码验证和语法检查,作为我们持续集成和构建工作流程的一部分.

有没有更好的方法来实现这样的功能或有没有办法通过jslint调整这样的代码?

javascript jslint

60
推荐指数
5
解决办法
3万
查看次数

匿名类实现接口

我在方法中有以下代码:

 var list = new[]
  {
   new { Name = "Red", IsSelected = true },
   new { Name = "Green", IsSelected = false },
   new { Name = "Blue", IsSelected = false },
  };
Run Code Online (Sandbox Code Playgroud)

我想调用一个函数,它需要一个元素列表,每个元素实现一个接口(ISelectable).我知道如何使用普通类完成此操作,但在这种情况下,我只是尝试填写一些演示数据.

是否可以创建实现接口的匿名类?

像这样:

new { Name = "Red", IsSelected = true } : ISelectable
Run Code Online (Sandbox Code Playgroud)

c# interface anonymous-class

14
推荐指数
2
解决办法
4890
查看次数

服务和存储库层的职责

在将对象保存到持久性存储时,只是试图了解服务层和存储库层的职责.

我目前的立场是这样的:

在我的控制器中,我根据用户提交的数据(从表单中)创建了一个"Note"对象.然后用户在"NoteService"上调用"Save"(通过依赖注入存在).

在"NoteService"的"Save"方法中,我执行业务逻辑验证,然后将"Note"对象传递给"NoteRepository"的"Save"方法.

在"NoteRepository"的"保存"方法,然后进行检查,看是否有这个对象上现有的主键,如果是的话得到从数据库,它是使用"注意"对象通过传递的属性更新对象和它然后保存回到db.如果没有主键,则将对象简单地保存到数据库,然后使用新创建的主键返回到服务.

asp.net-mvc repository service-layer

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

给定地球上2个闭合点的纬度/经度(<10m),如何计算以米为单位的距离?

我在地球上有2点的纬度/经度.他们非常接近,<10米.让我们假设地球是平坦的.如何以米为单位计算它们之间的距离?

我知道可以正确执行此操作的工具(PostGIS等),但是我只是做一个粗略的准备好的类型,而且我的确很准确.如此小的尺寸,1%的差异只有10厘米,这对我来说很好.我在库存python中这样做.我对标准欧几里德距离的事物很好.

algorithm geometry distance geospatial

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

尽管存在memset,但"使用未初始化的值"

我分配了一个2d数组并使用memset用零填充它.

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

void main() {
    int m=10;
    int n =10;
    int **array_2d;
    array_2d = (int**) malloc(m*sizeof(int*));
    if(array_2d==NULL) {
        printf("\n Could not malloc 2d array \n");
        exit(1);
    }
    for(int i=0;i<m;i++) {
        ((array_2d)[i])=malloc(n*sizeof(int));
        memset(((array_2d)[i]),0,sizeof(n*sizeof(int)));
    }


    for(int i=0; i<10;i++){
        for(int j=0; j<10;j++){
            printf("(%i,%i)=",i,j);
            fflush(stdout);
            printf("%i ", array_2d[i][j]);
        }
        printf("\n");
    }
}
Run Code Online (Sandbox Code Playgroud)

之后我使用valgrind [1]来检查内存错误.我得到以下错误:Conditional jump or move depends on uninitialised value(s)第24行(printf("%i ", array_2d[i][j]);).我一直认为memset是初始化数组的函数.我怎样才能摆脱这个错误?

谢谢!

Valgrind输出:

==3485== Memcheck, a memory error detector
==3485== Copyright (C) 2002-2009, and GNU GPL'd, …
Run Code Online (Sandbox Code Playgroud)

c malloc valgrind memset

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

C++程序中非常奇怪的堆栈溢出

我不久前写了一个程序(Mac OS X,C++,SDL,FMOD),它表现得相当不错.但最近我想扩展其功能并为其添加更多代码.现在,当我运行它并尝试测试新功能时,程序会与SIGABRT崩溃.

查看调试器,在函数堆栈上我看到:

  • _杀
  • 杀$ UNIX2003
  • 提高
  • __abort
  • __stack_chk_fail
  • odtworz < - 我的功能被修改了

据我所知,"__ stack_chk_fail"表示堆栈溢出.但这不是最奇怪的事情.在这个函数"odtworz"中,我有一些像这样的代码:

...

koniec = 0;
while ( koniec == 0 ) {
    ...
    if (mode == 1) {
        ...
    }
    else if (mode == 2) {
        ...
    }
    else if (mode == 3) {
       piesniOrkiestrowe[0] = '\0'; 
       while ( piesniOrkiestrowe[0] == '\0' ) { 
           losowaPiesn(); 
           char * piesnOrkiestrowa = szukajPiesniOrkiestrowej(); 
           if ( piesnOrkiestrowa != NULL ) 
              strcpy(piesniOrkiestrowe, piesnOrkiestrowa); 
       } 
       char nowyPiesnPlik[25]; 
       sprintf(nowyPiesnPlik, "%sorch/%s", PIESNI_DIR.c_str(), piesniOrkiestrowe); …
Run Code Online (Sandbox Code Playgroud)

c++ stack-overflow macos callstack

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

C#:如果从多个线程调用静态方法怎么办?

在我的应用程序中,我有一个静态方法,可以同时从多个线程调用.我的数据是否存在混淆的危险?

在我的第一次尝试中,该方法不是静态的,我正在创建该类的多个实例.在那种情况下,我的数据以某种方式混淆了.我不确定这是怎么发生的,因为它有时只会发生.我还在调试.但是现在这个方法是静态的,到目前为止我没有问题.也许这只是运气.我不确定.

c# static multithreading

87
推荐指数
4
解决办法
7万
查看次数

如何从<?php the_category()?>中删除列表

我正在使用wordpress,我想知道如何在使用时获得帖子类别的永久链接和名称:

<?php the_category() ?>
Run Code Online (Sandbox Code Playgroud)

上面输出一个列表,我只想在我自己的标记中包装永久链接和类别

php wordpress

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

键入的元编程语言

我想用静态类型语言做一些元编程,我的程序和我的元程序都将被输入.我的意思是强烈的意义:如果我的程序生成器编译,我希望类型系统足够强大,只能生成类型正确的程序.

据我所知,只有metaocaml才能做到这一点.(不,模板Haskell和C++模板都不符合要求 - 参见本文).问题:其他语言/系统允许哪些内容?

编辑:据我所知,metaocaml已经死了.奥列格试图恢复它,但这仍然是OCaml本身背后的几个版本.如果一个人想要使用实验语言(即甚至比metaocaml更多),看起来Ur和很可能是Idris符合这个要求.还有其他新的参赛作品吗?

static-typing metaprogramming

15
推荐指数
3
解决办法
1262
查看次数

C++删除语法

我偶然发现了这种"删除"的不寻常用法.只是想知道以下行是删除指针还是仅删除第一行?

delete ptr1, ptr2
Run Code Online (Sandbox Code Playgroud)

c++

40
推荐指数
5
解决办法
4856
查看次数