API参考范围页面说: 范围可以从父范围inheritance。 开发人员指南范围页面说: 范围(原型)从其父范围inheritance属性。 那么,子范围是否总是从其父范围原型inheritance? 有例外吗? 当它inheritance时,是否正常的JavaScript原型inheritance?
我曾经知道这是什么意思,但我现在正在努力… 这基本上是说document.onload ? (function () { })();
原始types(数字,string等)是按值传递的,但是对象是未知的,因为它们可以是值传递的(如果我们认为持有对象的variables实际上是对象的引用)和通过引用传递(当我们认为对象的variables持有对象本身)。 尽pipe最后并不重要,但我想知道传递约定的正确方法是什么。 是否有JavaScript规范的摘录,它定义了什么应该是关于这个的语义?
我知道document.write被认为是不好的做法; 我希望编写一份列表,向第三方供应商提交他们为什么不应该在他们的分析代码的实现中使用document.write 。 请将您的理由声明为document.write作为一个糟糕的做法下面。
当我想阻止其他事件处理程序在某个事件被触发后执行时,我可以使用两种技术之一。 我将在示例中使用jQuery,但这也适用于纯JS: 1. event.preventDefault() $('a').click(function (e) { // custom handling here e.preventDefault(); }); 2. return false $('a').click(function () { // custom handling here return false; }); 这两种停止事件传播的方法是否有显着差异? 对我来说, return false; 比执行一个方法更简单,更短,也可能更less出错。 用这个方法,你必须记住正确的套pipe,括号等 另外,我必须在callback中定义第一个参数才能调用该方法。 也许,有一些原因,我应该避免这样做,并使用preventDefault呢? 什么是更好的方法?
getElementsByClassName (和类似的函数,如getElementsByTagName和querySelectorAll )与getElementById一样工作,还是返回元素数组? 我问的原因是因为我试图改变使用getElementsByClassName所有元素的风格。 见下文。 //doesn't work document.getElementsByClassName('myElement').style.size = '100px'; //works document.getElementById('myIdElement').style.size = '100px';
如何使用jQuery或纯JavaScript将用户从一个页面redirect到另一个页面?
我想在JavaScript中parsing一个JSONstring。 反应是类似的 var response = '{"result":true,"count":1}'; 我怎样才能得到值的result并从此count ?
什么是克隆JavaScript对象最有效的方法? 我见过obj = eval(uneval(o)); 正在使用,但这是非标准的,只有Firefox支持 。 我做了像obj = JSON.parse(JSON.stringify(o)); 但质疑效率。 我也看到recursion复制function与各种缺陷。 我很惊讶没有规范的解决scheme存在。
我注意到JavaScript的new Date()函数在接受多种格式的date方面非常聪明。 Xmas95 = new Date("25 Dec, 1995 23:15:00") Xmas95 = new Date("2009 06 12,12:52:39") Xmas95 = new Date("20 09 2006,12:52:39") 在调用new Date()函数时,我无法在任何地方find显示所有有效string格式的文档。 这是将string转换为date。 如果我们看另一面,也就是将date对象转换为string,直到现在,我还是觉得JavaScript没有内置API来将date对象格式化为string。 编者注:以下方法是提问者在特定浏览器上的尝试,但一般不起作用; 看到在这个页面上的答案 ,看到一些实际的解决scheme。 今天,我在date对象上使用了toString()方法,而且令人惊讶的是,它将date格式化为string。 var d1 = new Date(); d1.toString('yyyy-MM-dd'); //Returns "2009-06-29" in Internet Explorer, but not Firefox or Chrome d1.toString('dddd, MMMM ,yyyy') //Returns "Monday, June 29,2009" in Internet Explorer, […]