小编Mar*_*ers的帖子

Javascript返回冒号

我正在学习JavaScript,并且遇到了以下结构:

var Test = (function () {

  function func1() {
      //do something.....
  }

  function func2() {
      //do something.....
  }

  function func3() {
      //do something.....
  }

  return {
      func1: func1,
      func2: func2,
      func3: func3
  };

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

我想知道返回块正在做什么.这是一个非常常用的JavaScript结构吗?请告诉我在哪里可以获得更多相关信息.

javascript return revealing-module-pattern

54
推荐指数
2
解决办法
3810
查看次数

JavaScript中的数组求和值

我已经定义了一个名为的JavaScript变量myData,它是new Array这样的:

var myData = new Array(['2013-01-22', 0], ['2013-01-29', 0], ['2013-02-05', 0],
             ['2013-02-12', 0], ['2013-02-19', 0], ['2013-02-26', 0], 
             ['2013-03-05', 0], ['2013-03-12', 0], ['2013-03-19', 0], 
             ['2013-03-26', 0], ['2013-04-02', 21], ['2013-04-09', 2]);
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以对数组中找到的数值求和(例如0 + 0 + 21 + 2 + 0等),并且可能有一个变量,结果是我可以在脚本标记之外使用,因为我有7种这样的阵列对应于一周中的每一天.我想基于此进行比较.如果可能的话,这是采取这种行动的最佳方法吗?

javascript arrays for-loop sum

50
推荐指数
6
解决办法
16万
查看次数

通过jQuery/Javascript添加悬停CSS属性

一些CSS样式需要在悬停时应用于元素,并且必须使用javascript/jquery直接应用CSS样式,而不是通过样式表或$(this).addClass('someStyle')因为我将DOM元素注入到另一个页面中.

我们可以使用通常的CSS样式

$('#some-content').css({
    marginTop: '60px',
    display: 'inline-block'
});
Run Code Online (Sandbox Code Playgroud)

我们应该如何为:hover事件添加CSS样式?


我们必须求助于:

$('#some-content').hover(
       function(){ $(this).css('display', 'block') },
       function(){ $(this).css('display', 'none') }
)
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery hover

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

在Javascript中,我可以在声明之前使用变量吗?

如果我在定义之前可以在JS中使用变量,我一直想知道一段时间,如下所示:

var country = "USA";
switch (country) {
    case "USA":
        country = i;
    case "blach":
        //not finished yet
}
/*
  put a whole
  bunch more code here
*/
var i = 10;
Run Code Online (Sandbox Code Playgroud)

这有效吗?是允许的吗?如果是这样,它的技术术语是什么?

javascript variables scope switch-statement

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

数组 - 在序列中查找缺少的数字

我试图找到一种简单的方法来循环(迭代)数组以找到序列中所有缺少的数字,该数组看起来有点像下面的那个.

var numArray = [0189459, 0189460, 0189461, 0189463, 0189465];

对于上面的数组我需要01894620189464注销.

更新:这是我从Soufiane的回答中使用的确切解决方案.

var numArray = [0189459, 0189460, 0189461, 0189463, 0189465];
var mia= [];

    for(var i = 1; i < numArray.length; i++) 
    {     
        if(numArray[i] - numArray[i-1] != 1) 
        {         
            var x = numArray[i] - numArray[i-1];
            var j = 1;
            while (j<x)
            {
                mia.push(numArray[i-1]+j);
                j++;
            }
        }
    }
alert(mia) // returns [0189462, 0189464]
Run Code Online (Sandbox Code Playgroud)

UPDATE

这是使用.reduce的整洁版本

var numArray = [0189459, 0189460, 0189461, 0189463, 0189466];
var mia = numArray.reduce(function(acc, cur, …
Run Code Online (Sandbox Code Playgroud)

javascript arrays loops sequence

23
推荐指数
4
解决办法
3万
查看次数

检查复选框已禁用(Jquery)

目的是;
如果禁用复选框,则不执行任何操作
如果启用并选中了复选框,请设置按钮的样式.
这是我到目前为止所得到的;

 $(document).ready(function (e) {


        $(".checkbox").live("click", function () {

            if ($(this).hasAttribute('disabled')) {
                return false;
            }
            var isAnyChecked;

            $("input[type=checkbox]").each(function () {
                var checkedValue = $(this).attr("checked");
                if (checkedValue == "checked") {
                    isAnyChecked = true;
                }


            });

            if (isAnyChecked) {
                $("#<%= btnConfirm.ClientID %>").css("display", "block");

            } else {
                $("#<%= btnConfirm.ClientID %>").css("display", "none");

            }


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

我试过.is(':disabled'),.hasAttr(),.prop().attr().任何帮助将不胜感激.

javascript checkbox client-side

11
推荐指数
1
解决办法
4万
查看次数

如何在JavaScript中检测数组相等?

JavaScript中有两个数组,它们都采用以下格式:

[{'drink':['alcohol', 'soft', 'hot']}, {'fruit':['apple', 'pear']}];
Run Code Online (Sandbox Code Playgroud)

我需要检测两个数组是否相等.如果它们以不同的顺序包含相同的元素,则它们被认为是相等的.我该怎么做?

javascript arrays string equality

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

有没有办法在输入类型='文字'上禁用'标签'?

是否有一个跨浏览器的解决方案来禁用输入类型='text'上的'tab'?

<input type='text' />
Run Code Online (Sandbox Code Playgroud)

按"标签"可移动到下一个"可聚焦"组件(例如按钮)

我想要'tab'做其他事情.例如,即使在谷歌搜索选项卡中,也只是用于自动完成建议的文本,而不是将您移动到下一个可聚焦组件...

谢谢

html javascript jquery focus

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

如何将千位分隔符添加到我的html表单中

例如,我有一个文本框,我输入12000,我希望它在文本框中看起来像12,000我将如何做到这一点?我用html来做文本框

html javascript string concatenation

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

Javascript累积一个对象数组到一个对象数组

我有一个对象数组:

var myArray = [
    {
        "date" : "03/01/2017",
        "value" : 2
    },  {
        "date" : "04/01/2017",
        "value" : 6
    },  {
        "date" : "05/01/2017",
        "value" : 4
    }
];
Run Code Online (Sandbox Code Playgroud)

我需要累积值并使用更新的值保持相同的数组

结果看起来像这样

var myArray = [
    {
        "date" : "03/01/2017",
        "value" : 2
    },  {
        "date" : "04/01/2017",
        "value" : 8 //(2+6)
    },  {
        "date" : "05/01/2017",
        "value" : 12 //(2+6+4)
    }
];
Run Code Online (Sandbox Code Playgroud)

我知道这存在

[0, 1, 2, 3, 4].reduce(function(accumulator, currentValue, currentIndex, array) {
  return accumulator + currentValue;
});
Run Code Online (Sandbox Code Playgroud)

但我找不到对象返回对象的示例

javascript arrays object

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