联系方式

咨询热线:400-998-6158

点击此处免费预约试听课程»

常见问题
学习资讯
常见问题

昆明普宁区Java学习班哪里专业

昆明普宁区Java学习班哪里专业

学习目标本课程包括JavaSE,JavaEE,SSHJ框架部分以及学员项目训练等内容,

使学员达到以下目标:
精通JavaSE编程和面向对象的重要概念,有较强的规范代码编写能力。
精通JavaEE知识,熟练使用JavaBean、Jsp、Servlet技术进行MVC框架的Web开发。
精通目前流行的三大框架:Struts、Spring、Hibernate、Ajax等,熟练运用进行Web项目开发。
精通企业流行的数据库0racle10g、MySQL。
掌握EJB和WebService在企业中的运用。

掌握Web实际项目案例开发流程以及企业规范。

我们致力于培养面向互联网领域的高端人才,以学员工作为目的,优质工作为宗旨,是一家集互联网营销师、UI交互设计师、Web前端工程师、Java工程师、PHP工程师、SEO优化师、SEM竞价师、社会化媒体运营师、电商运营师、互联网产品经理、Android工程师、iOS工程师、C/C++工程师、软件测试工程师、Linux云计算工程师、Python工程师、大数据工程师、Unity开发工程师、AR/VR开发工程师、人工智能开发工程师、网络安全工程师、嵌入式开发工程师等课程为一体的IT培训机构。



请看下面的代码片段:

for (var i = 0; i < 5; i++) { var btn = document.createElement('button');

btn.appendChild(document.createTextNode('Button ' + i));

btn.addEventListener('click', function(){ console.log(i); }); document.body.appendChild(btn);

}

(a)当用户点击“Button 4”的时候会输出什么到控制台,为什么?(b)提供一个或多个备用的可按预期工作的实现方案。

(a)无论用户点击什么按钮,数字5将总会输出到控制台。这是因为,当 onclick 方法被调用(对于任何按钮)的时候, for 循环已经结束,变量 i 已经获得了5的值。(面试者如果能够谈一谈有关如何执行上下文,可变对象,激活对象和内部“范围”属性贡有助于闭包行为,则可以加分)。

(b)要让代码工作的关键是,通过传递到一个新创建的函数对象,在每次传递通过 for 循环时,捕捉到 i 值。下面是三种可能实现的方法:

for (var i = 0; i < 5; i++) { var btn = document.createElement('button');

btn.appendChild(document.createTextNode('Button ' + i));

btn.addEventListener('click', (function(i) { return function() { console.log(i); };

})(i)); document.body.appendChild(btn);

}

或者,你可以封装全部调用到在新匿名函数中的 btn.addEventListener :

for (var i = 0; i < 5; i++) { var btn = document.createElement('button');

btn.appendChild(document.createTextNode('Button ' + i));

(function (i) {

btn.addEventListener('click', function() { console.log(i); });

})(i); document.body.appendChild(btn);

}

也可以调用数组对象的本地 forEach 方法来替代 for 循环:

['a', 'b', 'c', 'd', 'e'].forEach(function (value, i) { var btn = document.createElement('button');

btn.appendChild(document.createTextNode('Button ' + i));

btn.addEventListener('click', function() { console.log(i); }); document.body.appendChild(btn);

});

学校联系方式

更多培训课程,学习资讯,课程优惠等学校信息,请进入 昆明晋宁区IT培训昆明晋宁区php培训昆明晋宁区java培训 网站详细了解,免费咨询电话:400-998-6158

相关课程