草庐IT

javascript - typescript : check a string for number

我是网络开发的新手,在我的函数中想检查给定的字符串值是否为数字。如果字符串不是有效数字,我想返回null。以下适用于所有情况,除非字符串为“0”,在这种情况下它返回null。parseInt(columnSortSettings[0])||null;如何防止这种情况发生。显然parseInt不会将0视为整数! 最佳答案 因为0是假的,所以你可以使用isNaN()在这种情况下varres=parseInt(columnSortSettings[0],10);returnisNaN(res)?null:res;

javascript - JavaScript 中的 "new Number(...)"和 "Number(...)"有什么区别?

在Javascript中,reliablewaystoconvertastringtoanumber之一是Number构造函数:varx=Number('09');//9,becauseitdefaultstodecimal灵感来自thisquestion,我开始想知道——上面和之间有什么区别:varx=newNumber('09');Number当然看起来更好,但它似乎对构造函数的使用有点不合适。在没有新的情况下使用它有任何副作用或有什么不同吗?如果没有区别,为什么不呢?new的目的是什么? 最佳答案 在第一种情况下,您使用的是N

javascript - 当值被分配给组件状态时,为什么 console.log 打印以前的状态?

我将数字值从Numbers组件发送到Main组件。一切正常,直到我将主组件中的值设置为该组件的状态。varNumbers=React.createClass({handleClick:function(number){this.props.num(number)},render:function(){return(123)}})varMain=React.createClass({getInitialState:function(){return{number:0}},handleCallback:function(num){console.log("numberisrighthere

javascript - 检查字符串是否以数字开头

这个问题在这里已经有了答案:HowtocheckifStringstartswithnumberinjavascript(4个答案)关闭6年前。我如何在javascript中做这样的事情:vars='124sdg';varf='hsdsda';if(s.startsWith(anumber)){//Returntrue}if(f.startsWith(anumber)){//Returnfalse}

javascript - 是什么导致错误 "Uncaught TypeError: number is not a function"

我有一个更新表单的onchange事件,在更新过程中它调用一个函数来计算运费。我不确定为什么,但是当我尝试调用该函数时出现以下错误:未捕获的类型错误:数字不是函数shipping函数如下所示:functionshipping(weight){varflatswitch(weight){case1:case2:case3:flat=32.00;break;case4:flat=18.50;break;case5:flat=15.80;break;case6:flat=14.00;break;case7:flat=12.71;break;case8:flat=11.75;break;cas

javascript - Angular 数据绑定(bind) - 输入类型 ="number"

我在使用AngularJS绑定(bind)数值时遇到问题。我在JSFiddle上放了一个简化的例子:http://jsfiddle.net/treerock/ZvdXp/{{value}}这应该是三种不同类型的输入字段,如果你更新一个,那么所有的值都应该更新。除了数字输入外,这是有效的。例如如果我在第一个数字框中键入20,它会更新所有其他值实例。但是,如果我更新文本或范围输入,数字输入将变为空白。我想知道问题是否与数字在字段之间的表示/转换方式有关。例如数字输入是float,文本输入是字符串? 最佳答案 你是对的,它与字符串类型和数

javascript - 在 javascript 中返回多个值?

有没有办法在Javascript中使用类似C#的out或ref参数修饰符来做这样的事情:functionmyManyReturnFunction(number1,number2,outx,outy){x=number1*number2;y=number1/number2;returntrue;}varheight1,height2=0;varcheck=myManyReturnFunction(1,1,outheight1,outhight2);我也想更改变量的引用。所以是的,通过引用传递参数。 最佳答案 functionmyMan

javascript - 试图在 JS 中找到一个数字的因数

我刚开始学习JS,并且理解寻找因子的概念。然而,这段代码是我目前所拥有的。我有一个str变量,它只输出第一个因子2。我试图将每个(int)作为因子列表添加到str中。下面的代码片段有什么问题?functioncalculate(num){varstr="";varint=2;if(num%int==0){str=str+int;int++;}else{int++;}alert(str);}calculate(232); 最佳答案 更新的ES6版本:正如@gengns在评论中建议的那样,生成数组的更简单方法是使用扩展运算符和键方法:c

javascript - 任何框架或任何人都需要使用 String/Number/Boolean 对象而不是原始版本的原因是什么?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:WhyaretheretwokindsofJavaScriptstrings?例如,如果我们需要动态计算正则表达式,就需要使用newRegExp()来代替正则表达式。然而,当任何人都需要使用String/Number/Boolean对象而不是它们的原始版本时,边缘情况究竟是什么?(因为我似乎什至想不出在什么地方会需要它)

javascript - 从数字文字访问 "getter"的属性时,IE9 中出现奇怪的 `Number.prototype` 行为

Object.defineProperty(Number.prototype,'foo',{get:function(){returnthis}})console.log(10.5.foo)console.log(10..foo)//0inIE9!console.log(10.0.foo)//0inIE9!console.log(10.01.foo)console.log((10).foo)//0inIE9!varx=10console.log(x.foo)//0inIE9!谁能解释这种行为和/或建议解决方法?jsfiddle.net/yr7hQ/ 最佳答案