草庐IT

called_number

全部标签

javascript - 为什么我们在 javascript 中有 Function.call?

>Function.call==Function.prototype.calltrue>Function.prototype==Functionfalse为什么Function.prototype.*方法以Function.*的形式存在?似乎不一致。任何其他主要类型都不是这种情况(Array.slice不存在但Array.prototype.slice存在)。 最佳答案 因为Function本身就是Function的原型(prototype)console.log(FunctioninstanceofFunction);consol

javascript - 为什么 "foo".toString() 与 toString.call ("foo"不同)?

下面是一个JavaScript问题://TestedviaGoogleChromeconsole.vartoString=Object.prototype.toString;"foo".toString();//"foo"toString.call("foo");//[objectString][].toString();//""toString.call([]);//[objectArray]{}.toString();//syntaxerrortoString.call({});//[objectObject]为什么toString的结果与toString.call()不同?已更新

javascript - 为什么 Javascript 将结果作为 Number 而不是 True/False 用于表达式?

这个问题在这里已经有了答案:Whytheresultofbool(true)&&stringisstringinjavascript?(4个答案)关闭8年前。今天,当我观察到一些奇怪的事情时,我正在我的应用程序中漫无目的地处理JavaScript代码。varsomeVar=25;varanotherVar=50;varout=(anotherVar==50&&someVar);console.log(out)//outputs25andnottrueorfalse;知道发生了什么吗?

javascript - react 功能组件 : calling as function vs. 作为组件

假设我有一个功能组件:constFoo=(props)=>({props.name});直接作为函数调用有什么区别:constfooParent=()=>({Foo({name:"foo"})})与将其称为组件相比:constfooParent=()=>()我最感兴趣的是性能影响,React在内部如何以不同方式对待它们,也许ReactFiber中的情况可能有何不同,我听说功能组件在其中获得了性能提升。 最佳答案 将其作为函数调用要快得多,事实上几个月前就有一次讨论。此时功能性react组件不能是PureComponents所以没有真

javascript - Chrome : How to solve "Maximum call stack size exceeded" errors on Math. max.apply(数学,数组)

我必须找到非常大的数组的最大值和最小值。为此,我正在使用Math.max.apply(Math,my_array);Math.min.apply(Math,my_array);它在Firefox和IE上运行良好,但在Chrome上我总是得到Maximumcallstacksizeexceeded错误...我当前的数组有221954个元素,这不是我最大的。有人知道如何在Chrome上解决这个错误吗?如何优化最大值和最小值的搜索?对于那些不相信的人,请在Chrome的控制台中尝试:varxxx=[]for(vari=0;i--->RangeError:超出最大调用堆栈大小

JavaScript 性能 : Modulus operation of negative Number within decrementing loop slowing the code by more than 100%

我正在浏览EloquentJavaScript(再次)遇到练习"ChessBoard"ofChapter2.在我第一次阅读它的那天,我写了一个不错的解决方案版本,并在ElequentJavascriptwebsite提供了另一个版本的解决方案。.我是想成为super高效程序员的新手之一,他们脑子里只有一个问题:“我能让它工作得更快或更小吗?无论如何?”所以,几个月前我在网上搜索时,遇到了aquestion在StackOverflow上,关于for循环与while循环的性能比较。因为在该线程中提到for循环比while慢,而递减迭代器的循环更快,所以我重写了代码以获得更好的性能。这是新版

javascript - 为什么 Number([]) === 0 和 Number({}) === NaN 在 Javascript 中?

我正在查看http://zero.milosz.ca/上的第一个表,并想了解为什么,例如0==[]和0!={}。我假设这是因为Number([])==0和Number({})==NaN。但是,那部分似乎是任意的。为什么空列表0和空对象NaN? 最佳答案 使用Number(some_object)将使用给定对象的字符串表示形式。对于您的示例,字符串表示形式是:js>({}).toString();[objectObject]js>[].toString();js>字符串'[objectObject]'不能转换为数字,但空字符串''可以

javascript - 这条 Javascript 语句中的 .call() 函数在做什么?

我正在积极学习javascript,我遇到了以下语句:Object.prototype.toString.call([]);而且我不知道它的含义或作用。我对.call有一个模糊的理解,因为它允许你在不同对象的上下文中调用一个方法(我认为),但我很难理解它的作用.call()函数在上面的语句中播放。所以我想知道是否有人可以解释.call()在这里做什么?谢谢!! 最佳答案 call方法将调用函数的this值设置为作为第一个参数传递的对象,在您的示例中,您正在执行Object.prototype.toStringArray对象上的方法。

javascript - 有效地在 word_number 键上对字典(或 js 中的任何键值数据结构)进行排序

如何按键对字典进行排序dict["word_21"]="HelloJava";dict["word_22"]="HelloWorld";dict["word_11"]="HelloJavascript";让我得到dict["word_22"]="HelloWorld";dict["word_21"]="HelloJava";dict["word_11"]="HelloJavascript";仅索引上有word_number组合,值是字符串。索引是不同的(没有相等的值)但在错误情况下可能是“未定义的”编辑:实际上我需要它的降序和升序。但我现在需要的是降序。 最

javascript - Number.isNaN 在 IE 中不存在

为什么IE不支持Number.isNaN函数?我不能使用简单的isNan而不是Number.isNaN因为这些函数是不同的!例如:Number.isNaN("abacada")!=isNaN("abacada")//false!=true我需要抽象字符串和数字并检查,是否有一些var确实包含NaN(我的意思是NaN常量,但不是像字符串那样的数字值)。someobj.someopt="blah"/0;someobj.someopt2="blah";someobj.someopt3=150;for(ainsomeobj)if(Number.isNaN(someobj[a]))alert('