小编frr*_*lod的帖子

什么是JavaScript中的"断言"?

assertJavaScript 中的含义是什么?

我见过类似的东西:

assert(function1() && function2() && function3(), "some text");
Run Code Online (Sandbox Code Playgroud)

并想知道该方法的assert()作用.

javascript assert

255
推荐指数
6
解决办法
19万
查看次数

原型继承 - 写作

所以我有这两个例子,来自javascript.info:

例1:

var animal = {
  eat: function() {
    alert( "I'm full" )
    this.full = true
  }
}

var rabbit = {
  jump: function() { /* something */ }
}

rabbit.__proto__ = animal 

rabbit.eat() 
Run Code Online (Sandbox Code Playgroud)

例2:

function Hamster() {  }
Hamster.prototype = {
  food: [],
  found: function(something) {
    this.food.push(something)
  }
}

// Create two speedy and lazy hamsters, then feed the first one
speedy = new Hamster()
lazy = new Hamster()

speedy.found("apple")
speedy.found("orange")

alert(speedy.food.length) // 2
alert(lazy.food.length) // 2 (!??)
Run Code Online (Sandbox Code Playgroud)

从示例2开始:当代码到达时 …

javascript inheritance prototype

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

在输入键上执行函数

我有一个输入,我只想添加一个事件监听器来激活一个函数,当我按下回车键,输入被聚焦时.我如何用纯JS做到这一点?

现在我有:

HTML:

        Enter your wage:<input type="text" id="wage" value ="" size=20>
        <button id="sub">Submit</button>
Run Code Online (Sandbox Code Playgroud)

使用Javascript:

    var wage = document.getElementById("wage");
    wage.addEventListener("change", validate);

    var btn = document.getElementById("sub");
    btn.addEventListener("click", validate);
Run Code Online (Sandbox Code Playgroud)

因此,当我单击或更改文本时,函数validate()基本上会激活,但我想通过按Enter来调用它.

javascript events input listener

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

函数调用和函数引用有什么区别?

我有以下功能

function hello() {
 alert("hi!");
}
Run Code Online (Sandbox Code Playgroud)

拿这段代码:

var elem = document.getElementById("btn");
elem.onclick = hello;
Run Code Online (Sandbox Code Playgroud)

我的问题可能有点难以理解,所以请耐心看看:这段代码与普通调用有什么区别,或者是什么使得这段代码需要引用函数变量而不是常规调用?(hello();)

我怎么知道我应该在哪里提供函数的引用,以及什么时候我应该实际调用它?

javascript reference function call

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

了解jQuery API文档语法

来自http://api.jquery.com/on/:

.on( events [, selector ] [, data ], handler(eventObject) )
Run Code Online (Sandbox Code Playgroud)

我知道这可能听起来有点愚蠢,但有人能解释一下这里的语法吗?

[]是什么意思?我认为这意味着你可以添加几个选项(选择器/数据)但是你也可以添加几个事件,为什么没有events方括号?

这里还有一个例子.on():

    $(document).on("click", ".item", function() {
alert("hi");
});
Run Code Online (Sandbox Code Playgroud)

data方法语法中的编写在哪里发挥作用?

jquery

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

在表格中查找TD的位置

所以,假设我有一张桌子,我想操纵其中的特定<td>内容:

HTML:

<table>
    <tr><td>1</td> <td>2</td></tr>
    <tr><td>3</td> <td>4</td></tr>
    <tr><td id="hi">5</td> <td>6</td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)

使用Javascript:

document.getElementsByTagName("table")[0].rows[2].cells[0];
Run Code Online (Sandbox Code Playgroud)

这将帮助我REACH表中的特定单元格.


我的问题是:

假设我<td>在表格中有一个特定的:

var td = document.getElementById("hi")
Run Code Online (Sandbox Code Playgroud)

我想知道它在表中的位置,所以我可以使用它table.rows[x].cells[y] 如何检查这个位置?

html javascript dom

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

jQuery"this"和元素集合

在这段代码中:

    $(function() {
        $("div").click(function() {
            $(this).before("<p>Hi</p>");

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

"这个"实际上指的是什么?它是指整个div的列表,还是仅仅针对特定的div?我怎么知道?

另外,如果我在this没有jQuery标志的情况下编写或者它们是否相同,这是否重要?

jquery this

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

变量属性的继承

来自codeacademy的练习:

function Penguin(name) {
    this.name = "Pingy";
    this.numLegs = 2;
}

// create your Emperor class here and make it inherit from Penguin
function Emperor (name){
    this.name = name;
}
Emperor.prototype = new Penguin();
var emp = new Emperor("Empy");
Run Code Online (Sandbox Code Playgroud)

所以我创建了Emperor继承属性Penguin,现在我知道emp.numLegs将是2.

阅读完评论之后,我编辑了一个问题:你可以看到我在创作时给出了一个名字emp,而且emp.name确实是我的新emp的名字,即"Empy".但是name从Penguin类构造函数继承的呢?它去哪儿了?

javascript inheritance

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

全局变量在匿名函数内不起作用

var count = 0; 
for ( var i = 0; i < 4; i++ ) { 
  setTimeout(function(){ 
    assert( i == count++, "Check the value of i." ); 
  }, i * 200); 
}
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用(i每次等于4而不是相等)?count, var是在全局范围内创建的,为什么它们在函数内部不可用?

(我想解释为什么这不起作用,我找到了一种方法,通过将其包装在另一个函数中来实现它,只是想要理解)

javascript variables closures global function

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

'this'在函数VS'this'中的一个方法

来自Javascript-Garden:

Foo.method = function() {
  function test() {
    //this is set to the global object
  }
test();
}
Run Code Online (Sandbox Code Playgroud)

为了从测试中获得对Foo的访问,有必要在引用Foo的方法内部创建一个局部变量:

Foo.method = function() {
  var that = this;
  function test(){
    //Use that instead of this here
  }
test();
}
Run Code Online (Sandbox Code Playgroud)

有人能解释一下吗?据我所知,this如果在全局范围内调用它,则引用全局对象.但是这里它被称为函数内部,它位于一个方法(第一个例子)中.为什么它确实引用了全局对象,而第二个例子却没有?

javascript this

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