相关疑难解决方法(0)

JavaScript闭包如何工作?

您如何向知道其所包含概念的人(例如函数,变量等)解释JavaScript闭包,但不了解闭包本身?

我已经看过维基百科上给出的Scheme示例,但遗憾的是它并没有帮助.

javascript variables closures scope function

7644
推荐指数
82
解决办法
139万
查看次数

什么是词汇范围?

有人可以给我一个关于词汇范围的简要介绍吗?

javascript scoping lexical-scope

645
推荐指数
14
解决办法
16万
查看次数

将整个Javascript文件包装在"(function(){...})()"之类的匿名函数中的目的是什么?

我最近一直在阅读很多Javascript,并且我注意到要导入的.js文件中的整个文件包含如下所示.

(function() {
    ... 
    code
    ...
})();
Run Code Online (Sandbox Code Playgroud)

这样做的原因是什么,而不是一组简单的构造函数?

javascript scope coding-style iife

572
推荐指数
6
解决办法
10万
查看次数

检查数组是否为空或存在

对于第一页加载,我需要检查是否有image_array最后一个图像加载,否则阻止预览按钮; 提醒用户按下新图像按钮; 创建空数组以放置图像;

问题是image_arrayelse火灾中所有时间.如果数组存在 - 它只是覆盖它,但警告剂量工作.

if(image_array.length > 0)
    $('#images').append('<img src="'+image_array[image_array.length-1]+'" class="images" id="1" />');
else{
    $('#prev_image').attr('disabled', 'true');
    $('#next_image').attr('disabled', 'true');
    alert('Please get new image');
    var image_array = [];
}
Run Code Online (Sandbox Code Playgroud)

更新在加载html之前我有类似的东西

<?php if(count($images) != 0): ?>
<script type="text/javascript">
    <?php echo "image_array = ".json_encode($images);?>
</script>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

315
推荐指数
10
解决办法
83万
查看次数

是否在ES6中使用let或const声明变量?

我已经玩ES6一段时间了,我注意到虽然声明的变量var按预期提升了......

console.log(typeof name); // undefined
var name = "John";
Run Code Online (Sandbox Code Playgroud)

... 用吊装声明letconst似乎有一些问题的变量:

console.log(typeof name); // ReferenceError
let name = "John";
Run Code Online (Sandbox Code Playgroud)

console.log(typeof name); // ReferenceError
const name = "John";
Run Code Online (Sandbox Code Playgroud)

这是否意味着变量声明let或未声明const?这是怎么回事?这个问题letconst这个问题有什么区别吗?

javascript const let hoisting ecmascript-6

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

JavaScript中最快的因子函数是什么?

在JavaScript中寻找一个非常快速的factorial函数实现.有什么建议?

javascript math factorial

88
推荐指数
14
解决办法
16万
查看次数

如何防止Node.js在等待回调时退出?

我有这样的代码:

var client = new mysql.Client(options);
console.log('Icanhasclient');

client.connect(function (err) {
  console.log('jannn');
  active_db = client;
  console.log(err);
  console.log('hest');

  if (callback) {
    if (err) {
      callback(err, null);
    }

    callback(null, active_db);
  }
});
Run Code Online (Sandbox Code Playgroud)

我的问题是Node运行时会立即终止.它打印'Icanhasclient',但没有调用回调内的console.log.

(本例中的mysqlnode-mysql.

有没有什么可以让node.js在退出之前等待回调完成?

node.js

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

跟踪递归函数被调用的次数

 function singleDigit(num) {
      let counter = 0
      let number = [...num + ''].map(Number).reduce((x, y) => {return x * y})

      if(number <= 9){
          console.log(number)
      }else{
          console.log(number)
          return singleDigit(number), counter += 1
      }
   }
singleDigit(39)
Run Code Online (Sandbox Code Playgroud)

上面的代码采用一个整数,并通过将它乘以它自己的数字将它减少到一个数字。

示例为 39。

3 x 9 = 27.
2 x 7 = 14.
1 x 4 = 4.
Run Code Online (Sandbox Code Playgroud)

控制台将记录:

27 
14 
4
Run Code Online (Sandbox Code Playgroud)

如何跟踪递归函数被调用了 3 次?

我曾尝试添加计数器,但无法更新。将不胜感激任何帮助

javascript recursion

63
推荐指数
8
解决办法
9061
查看次数

IF语句中的javascript变量范围

是否在"if"语句中声明和赋值变量仅在"if"块内或整个函数内可见?

我是否在以下代码中执行此操作?(似乎工作,但多次声明"var结构"似乎很尴尬)任何更清洁的解决方案?

    function actionPane(state) {
    if(state === "ed") {
        var structure = {
            "element" : "div",
            "attr" : {
                "class" : "actionPane"
            },
            "contains" : [{
                "element" : "a",
                "attr" : {
                    "title" : "edit",
                    "href" : "#",
                    "class" : "edit"
                },
                "contains" : ""
            }, {
                "element" : "a",
                "attr" : {
                    "title" : "delete",
                    "href" : "#",
                    "class" : "delete"
                },
                "contains" : ""
            }]
        }
    } else {
        var structure = {
            "element" : "div",
            "attr" : …
Run Code Online (Sandbox Code Playgroud)

javascript variables scope if-statement

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

在if语句中定义JavaScript变量

在if语句中定义JavaScript变量是否正确?

if(a==1){
    var b = 1;
} else {
    var b = 0;
}
Run Code Online (Sandbox Code Playgroud)

我知道上面的代码可行,但是,WebMatrix强调了变量.

我应该在if语句之外定义变量吗?或者第一个选项是正确的?或者它真的没关系?

var b = '';
if(a==1){
    b = 1;
} else {
    b = 0;
}
Run Code Online (Sandbox Code Playgroud)

javascript variables if-statement

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