草庐IT

Prototype_Console

全部标签

Javascript:将方法添加到函数原型(prototype)

有没有更短的写法:varcontroller=function(){/*---constructor---*/};controller.prototype.function1=function(){//Prototypemethod1}controller.prototype.function2=function(){//Prototypemethod2}controller.prototype.function3=function(){//Prototypemethod3}returncontroller我正在使用require.js。我想知道我是否可以避免controller.pr

javascript - 为什么 console.log 在 Chrome 的某些网站上是一个空函数?

转到Twitter的登录页面并在控制台中键入以下内容:window.addEventListener('keypress',function(e){console.log('hello')},true)(注意:如何将第三个参数设置为true以启用事件捕获。这会导致事件在被子元素使用之前首先被窗口拦截。)尝试按一些键。请注意hello是如何不输出到控制台的。为keydown或keyup添加事件监听器不会改变任何内容。hello将在大多数网站上获得输出,但不会在Twitter或Gmail等网站上获得输出。为什么?是什么阻止了事件监听器?编辑:似乎在Firefox上按预期工作。但不是Chro

javascript - 使用 TypeScript 在现有原型(prototype)上扩展实例/静态函数

我最近问了一个关于TypeScript扩展JavaScriptAPI中现有原型(prototype)的能力的问题(此处:ExtendingObject.prototypewithTypeScript)。这原来是一个错误,自TypeScript0.9.0Alpha以来已得到解决(现在包括泛型...很棒:-))在TypeScript中,接口(interface)是开放式的,因此如果您查看lib.d.ts,您会发现一个定义JavaScript对象API契约的接口(interface)。您还应该看到Object的变量声明,它定义了Object的静态函数。为了简单起见,它们在这里://Pulle

javascript - JavaScript 中的原型(prototype)与函数式 OOP

在编写面向对象的脚本时,每种类型/方法的优缺点是什么?就我个人而言,我发现闭包(函数式?方法)是一种更自然且或许更优雅地封装状态的方法。但是,我听说这种闭包的使用在JavaScript实现中速度较慢。我至少想知道原型(prototype)方法在哪里最合适。 最佳答案 “函数式”风格(大多数人会称之为“传统OOP”):优点:OOP以每个人(或至少Java程序员)熟悉的方式工作,包括“真正的”私有(private)方法和变量缺点:Javascript不是为这种类型的OOP设计的,因此您最终要跳过很多环节才能让它工作。这些环使调试变得更加

javascript - Chrome Dev Console 中的蓝色数字?

在javascript中,我有一个变量,我将其推送到console.log然后递增它并再次将其推送到日志,这在Chrome开发工具中显示如下。这个变量做了一些奇怪的事情,比如如果我尝试使用+=运算符来添加它,它实际上将添加的值放在数字后面(例如如果x=5而我做了x+=3,x将等于53)。真正令人难以置信的部分是用++递增它按预期工作,但我的问题不是为什么会这样,而是为什么递增的数字在控制台中是蓝色的?如果有人能告诉我发生上述情况的可能情况,那就太好了,但我感觉控制台中的蓝色条目与此相关。那么基本上为什么在Chrome开发者控制台中,数字会显示为蓝色? 最佳答

javascript - Array.from 与 A​​rray.prototype.map

那么这两个函数有什么区别呢?它们都创建了newArray对象。到目前为止我发现的唯一区别是Array.from支持ArrayLike参数。我看不出他们为什么没有添加对Array.prototype.map函数的ArrayLike支持的任何原因。我错过了什么吗? 最佳答案 Array.from()的目的是获取一个非数组(但类似于数组)对象并将其复制到实际数组中。然后,这允许您在副本上使用所有数组方法,包括不仅仅是迭代它的东西,例如.splice()、.sort()、.push()、.pop()等......这显然比仅仅使.map()处

javascript - Safari/WebKit 的 console.log DOM 节点作为对象?

这让我抓狂了一段时间。当我console.log一个DOM节点(通过示例从document.getElementById返回)时,它显示为一个交互式html元素,就像它出现在“元素”选项卡上一样。这肯定很方便,但有时我只想展开对象并查看其所有属性,就像我可以对登录到控制台的所有其他类型的对象一样。有什么方法可以让DOM节点作为常规对象显示在控制台中? 最佳答案 使用console.dir而不是console.log。console.log(document.body);...console.dir(document.body);>H

javascript - 如何使用 Jest 和 jsdom 来测试 console.log?

我刚刚开始使用Jest,并且已经成功编写了测试DOM的单元测试。我有一个library在屏幕上输入内容,所以我可以很好地进行测试。在某些情况下,我的库不会抛出错误,而是吐出console.warn或console.log。是否可以使用Jest来测试这些控制台消息是否正在发生? 最佳答案 您可以像这样通过spy设置console.log:global.console={warn:jest.fn(),log:jest.fn()}//runyourcodeexpect(global.console.log).toHaveBeenCalle

javascript - String.prototype.replaceAll() 不工作

这个问题在这里已经有了答案:HowdoIreplacealloccurrencesofastringinJavaScript?(78个答案)关闭2年前。我需要替换变量中的所有字符串。vara="::::::";a=a.replace(":","hi");console.log(a);上面的代码只替换了第一个字符串即..hi::::::我使用了replaceAll但它不起作用。

javascript - jQuery fn 中的 "prototype"? + jquery 函数中的普通 javascript 代码?

我想知道原型(prototype)在jQuery中意味着什么?我通常会找到有关“原型(prototype)”(框架)的信息,但这里是jQuery中的“原型(prototype)”……?你能告诉我什么时候使用它最好吗?此外,您能否告诉我:为什么我们在jQuery插件中使用“纯javascript”代码,而不是像本例中那样使用jquery代码?是速度问题吗?这是我的例子:(twitter的插件)感谢您的回答!$.each(data,function(i,item){holder.append(""+item.text.makeLinks()+"");});//...furtherinthe