草庐IT

string-math

全部标签

javascript - 如何使用 Math.round 将数字四舍五入到最接近的偶数?

请仅使用JavaScript。这是我第一次尝试自己编写JavaScript。我已经成功地操纵了friend们过去为我编写的代码,但我从未从头开始编写自己的代码,直到最近才花时间尝试理解语言本身。我正在尝试制作一个基本的文胸尺码计算器,它从用户输入中获取数字(测量值),将它们路由到一个函数中,然后将文胸尺码返回(计算)给用户。因为我对这门语言还很陌生,所以我现在只想写一个部分——“bandsize”我有一个输入字段供用户输入他们的“下胸围测量值”,我目前已将其设置为四舍五入。这按预期工作。看这里functioncalculate(){varunderbust=document.getEl

javascript - Math.floor VS Math.trunc JavaScript

背景我正在制作一个函数,该函数接收一个正数,然后将该数字四舍五入为最接近它的整数。我一直在使用Math.floor,但最近我发现Math.trunc.我知道如果给定一个正数,两者都会返回相同的值,而且它们的工作方式完全不同。我有兴趣探索这种行为。问题哪个更快?我应该使用哪一个? 最佳答案 实际上,有更多的替代方法可以从数字中删除小数点。但这是可读性和速度的折衷。根据您的需要选择合适的。如果您只需要删除小数,请始终使用trunc()或按位运算符。floor(),ceil()和round()在概念上与trunc()非常不同.数学图书馆这

javascript - 流: Dynamically generate string union types?

假设我有一个流类型Suit,我想将它组合成另一种名为Card的类型。//types.jstypeSuit=|"Diamonds"|"Clubs"|"Hearts"|"Spades";typeCard={...suit:Suit,...}与其直接在suit.js中对Suit字符串进行硬编码,不如根据JavaScript原语(数组)动态生成Suit类型?说...//constants.jsconstSUITS=['Diamonds','Clubs','Hearts','Spades'];通过这种方式,西装只需定义一次,并且可以在JavaScript结构中定义,该结构将在应用程序的其他部分中

javascript - Chrome 中的 Math.log2 精度发生了变化

我编写了一个JavaScript程序,它根据元素的数量计算二叉树的深度。我的程序几个月来一直运行良好,但最近我发现在Chrome和Firefox中查看网页时存在差异。特别是在Firefox上:Math.log2(8)=3但现在在Chrome中:Math.log2(8)=2.9999999999999996我的JavaScript程序最初是为了根据元素的数量来查找二叉树的深度而编写的:vartree_depth=Math.floor(Math.log2(n_elements))+1;我对这个公式做了一个简单的修改,以便它在Chrome上仍然可以正常工作:varepsilon=1.e-5;

java中(String)类常用方法

作者简介:博主在读计科双非本科,目前大二,正在学习JAVA,数据库,操作系统,计算机网络,数据结构,JAVAWeb等…个人主页:熬夜磕代码丶作品专栏:javase我变秃了,也变强了给大家介绍一款程序员必备刷题平台——牛客网点击注册一起刷题收获大厂offer吧文章目录一、length()二、equals三、charAt()四、indexOf()五、trim()六、compareTo()七、toLowerCase()八、toUpperCase()九、replace()十、substring(intbeginIndex)十一、substring(intbeginIndex,intendIndex)总

javascript - Math.random() 的精度

JavaScript的Math.random()函数的精度是多少? 最佳答案 Math.random()生成大于等于0且小于1的16位小数的float。 关于javascript-Math.random()的精度,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3344447/

javascript - 模板中 string.length 的 Angular JS 问题

我对AngularJS(版本1.2.6)有疑问。由于某些我无法理解的原因,我无法访问存储在$scope中的字符串变量的length属性。在模板中:String'{{myObject.someVariable}}'haslength'{{myObject.someVariable.length}}'.在Controller中:$scope.myObject={};//asynchronuousloadingofmyObjectSomeService.loadObject(function(result)){$scope.myObject=result;console.log("Conte

javascript - typescript :在类型 'string' A 上找不到参数类型为 '{ "的索引签名“:字符串;}

我有一些普通的javascript代码,它接受字符串输入,将字符串拆分为字符,然后将这些字符与对象上的键匹配。DNATranscriber={"G":"C","C":"G","T":"A","A":"U"}functiontoRna(sequence){constsequenceArray=[...sequence];consttranscriptionArray=sequenceArray.map(character=>{returnthis.DNATranscriber[character];});returntranscriptionArray.join("");}console

javascript - Bootbox 4.1.0 : how to pass localized strings such as Ok, 取消Bootbox的确认?

在Bootbox3.2.0中,我能够使用如下传递的字符串进行确认:bootbox.confirm(confirm_string,cancel_string,yes_string,function(r){if(r){//dosomething}});我正在升级到4.1.0,但在调用上述函数时遇到错误。根据Bootbox4.1.0的文档(http://bootboxjs.com/documentation.html),调用confirm的方法有两种:bootbox.confirm(strmessage,fncallback)bootbox.confirm(objectoptions)我用消

javascript - 为什么 Google Chrome 浏览器的 Math.random 数字生成器不是 *that* 随机数?

今天我在各种浏览器中运行一些单元测试时遇到了一个奇怪的“错误”。在今天之前,我已经在Firefox中多次运行过测试,甚至在IE中运行过,但显然还没有在Chrome(v19-dev)中运行过。当我在Chrome中运行它们时,它始终未能通过一项测试,因为我计算的两个值不匹配。当我真正深入研究正在发生的事情时,我意识到问题在于我假设如果我用100,000个Math.random()值填充一个数组,它们都是唯一的(那里不会有任何碰撞)。事实证明,在Chrome中并非如此。在Chrome中,我始终得到至少两对匹配的值(共100,000个)。Firefox和IE9从未经历过冲突。这是我写的一个js