小编eft*_*eft的帖子

Math.round(num)vs num.toFixed(0)和浏览器不一致

请考虑以下代码:

for (var i=0;i<3;i++){
   var num = i + 0.50;
   var output = num + " " + Math.round(num) + " " + num.toFixed(0);
   alert(output);
}
Run Code Online (Sandbox Code Playgroud)

在Opera 9.63中我得到:

0.5 1 0

1.5 2 2

2.5 3 2

在FF 3.03我得到:

0.5 1 1

1.5 2 2

2.5 3 3

在IE 7中我得到:

0.5 1 0

1.5 2 2

2.5 3 3

注意粗体结果.为什么会出现这种不一致的情况?这是否意味着toFixed(0)应该避免?将数字舍入到最接近的整数的正确方法是什么?

javascript cross-browser

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

平均定义线性渐变的两种颜色的最佳方法是什么?

如果我有两种颜色由RGB值定义,我可以平均红色,绿色和蓝色值然后组合以定义看起来像两者的视觉平均值的第三种颜色吗?

即NewColor =(R1 + R2)/ 2,(G1 + G2)/ 2,(B1 + B2)/ 2

EDIT1:感谢所有回复.对于我目前的需求,我只处理颜色相同的颜色对,所以我认为平均它们会起作用.但是,我将尝试转换到Lab Space以确保假设是正确的,并且该技术将来会有用.

EDIT2:这是我的结果FWIW.Color1和Color2是我的两种颜色,两个中间列是分别在L a b空间和平均RGB中取平均值的结果.在这种情况下,两种颜色之间没有太大差异,因此平均技术的输出差异是微妙的.

颜色平均技术的视觉比较

rgb colors

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

为什么要转换为界面?

在Jesse Liberty的Programming C#(第142页)中,他提供了一个示例,他将对象转换为接口.

 interface IStorable
 {
    ...
 }

 public class Document : IStorable
 {
    ...
 }

 ...
 IStorable isDoc = (IStorable) doc;  
 ...
Run Code Online (Sandbox Code Playgroud)

这有什么意义,特别是如果对象的类实现了接口呢?

编辑1:澄清一下,我对转换的原因(如果有的话)感兴趣,而不是实现接口的原因.此外,这本书是他的2001年第一版(基于C#1,所以这个例子可能与以后版本的C#没有密切关系).

EDIT2:我在代码中添加了一些上下文

c# casting interface

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

如何在Notepad ++中模仿Visual Studio的CTRL-X,CTRL-V功能?

我正在使用Notepad ++进行某些项目,而错过了Visual Studio的Ctrl+ X,Ctrl+ C功能,可以在没有选择文本时剪切或复制整个当前行.剪切线快捷方式似乎是Ctrl+ L,这不像Ctrl+ 那样方便,X复制快捷方式似乎是Ctrl+ D,Ctrl+ L,这更不方便.

虽然之前已经提出了类似的问题,但是没有提供在Notepad ++中执行此操作的方法,我无法在Notepad ++站点或其论坛上找到解决方案.

keyboard-shortcuts notepad++

24
推荐指数
3
解决办法
5005
查看次数

在jQuery中使用'this'关键字的上下文

作为一个jQuery新手,我对使用this关键字的不同上下文感到有些困惑.有时它引用一个DOM元素,例如this.id,有时它引用一个jQuery对象,例如$(this).val().

Remy Sharp的博客文章很有帮助,但我想知道如何向新手解释这些差异.严格区别是jQuery问题或所有Javascript的共同点?

感谢到目前为止所有的回复 - 很棒的东西,明天我会回答.这是我后来遇到的另一篇博文,也有帮助: 这是什么?作者:Mike Alsup.

jquery

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

7
推荐指数
2
解决办法
9468
查看次数

BackgroundWorker线程:更新UI和中止操作

我在后台工作线程上运行一系列耗时的操作.在不同的阶段,我通过调用委托更新(窗体)进度条.但是,在一行代码中会发生一次更多的时间操作.

是否有可能 :

a)在执行该单行代码时更新UI,或者至少显示一个动画图标,显示用户正在完成工作.

b)让用户在执行该单行代码时取消后台工作线程

backgroundworker

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

为什么不能在CSS选择器中对后代进行分组?

如果要为一组后代分配相同的样式,为什么没有一种简单的方法来使用CSS?

假设您有一个HTML表,如下所示:

<table id='myTable'>
  <tr>
    <th></th>
    <th></th>
    <th></th>
  </tr>
  .
  .
  .
  <tr>
    <td></td>
    <td></td>
    <td></td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

为什么必须使用以下选择器设置所有列标题和单元格的样式?

#myTable th, #myTable td {}
Run Code Online (Sandbox Code Playgroud)

为什么没有类似下面的语法?

#myTable (th,td) {}
Run Code Online (Sandbox Code Playgroud)

css css-selectors

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

用于维护自身的程序或系统的术语是什么?

我不是指天网.我想说的是一个用于编译自己的编译器应用程序,一个跟踪自己的源代码的VCS等.

computer-science

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

如何在javascript和两个查找值中定义一组键/值并按顺序迭代该组?

我有一组键/值,例如orange = 123,banana = 4,apple = 567.如何将这些键/值存储在javascript对象中,以便我可以:

  1. 通过查找检索值,例如set ["orange"]应返回123 and,
  2. 按照添加键/值对的顺序迭代集合.

似乎对于1.对象文字是合适的但迭代顺序不是保证的,而对于2.一组键/值对(对象文字)将提供迭代顺序而不是基于的查找值的能力关键.

@*感谢所有答案 - 这个问题不是常见问题吗?像jQuery这样的库不包含对这种类型的支持吗?

javascript

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

标准化 JSON 数据

给出以下 JSON 结构

{
    "data": [
        {
            "id": "000000000014444A",
            "teams": [
                "000000000011AE74"
            ]
        },
        {
            "id": "000000000014434B",
            "teams": [
                "000000000011AE74",
                "00000000001583CE",
                "000000000010B4D7"
            ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

如何使用 jq 将数据结构化为

[
    {
        "id": "000000000014444A",
        "team": "000000000011AE74"
    },
    {
        "id": "000000000014434B",
        "team": "000000000011AE74"
    },
    {
        "id": "000000000014434B",
        "team": "00000000001583CE"
    },
    {
        "id": "000000000014434B",
        "team": "000000000010B4D7"
    }
]
Run Code Online (Sandbox Code Playgroud)

json jq

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