小编Sea*_*ang的帖子

javascript变量未定义

首先,让我们看看代码.

var a=0;
b=1;
document.write(a);
function run(){
    document.write(b);
    var b=1;
}
run();
Run Code Online (Sandbox Code Playgroud)

我认为结果是.01但事实上,结果是0undefined.

然后我修改这段代码.

var a=0;
b=1;
document.write(a);
function run(){
    document.write(this.b); //or document.write(window.b)
    var b=1;
}
run();
Run Code Online (Sandbox Code Playgroud)

是的,这次它按预期运行.01.我无法理解,为什么?

更有趣的是,我再次修改代码.

var a=0;
b=1;
document.write(a);
function run(){
    document.write(b);
    //var b=1;       //I comment this line
}
run();
Run Code Online (Sandbox Code Playgroud)

结果是01.

那么,任何人都能解释一下吗?

感谢您分享您的观点.我简化了这段代码

b=1;
function run(){
    console.log(b); //1
}
Run Code Online (Sandbox Code Playgroud)

二:

b=1;
function run(){
    var b=2;
    console.log(b); //2
}
Run Code Online (Sandbox Code Playgroud)

三:

b=1;
function run(){
    console.log(b); //undefined
    var b=2;
}
Run Code Online (Sandbox Code Playgroud)

javascript

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

Javascript - 在循环中附加事件

可能重复:
在循环中添加"click"事件侦听器

我做了一个demo.So让我们先看看HTML.

<a href="#" id="testA">testA</a>
<a href="#" id="testB">testB</a>    

<div id="showA">showA</div>
<div id="showB">showB</div>
Run Code Online (Sandbox Code Playgroud)

我想将click事件绑定到Elements a.当它点击时,alert相关div.(点击id="testA",提醒id="showA"......)

我写了jQuery代码.

var arr = ["A","B"];    
  for(var i=0;i<arr.length;i++){
    $("#test"+arr[i]).click(function(){
      alert($("#show"+arr[i]).text())
    });
  }
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我调试此代码并找到此代码alert($("#show"+arr[i]).text())

仅在我单击a元素时运行.当我点击a.变量i3已.

所以我该怎么做?

javascript jquery

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

标签 统计

javascript ×2

jquery ×1