Math对象

js内置数学对象 不是一个构造函数 所以不需要使用new来调用 而是直接使用里面的属性和方法即可

  • Math.PI 圆周率
  • Math.floor 向下取整 小数点直接省略
  • Math.ceil 向上取整 有小数点直接 1
  • Math.round 四舍五入 就近原则(-1.5 结果是 -1)
  • Math.abs() 绝对值就是这数字到原点(0)的距离有隐式转换 会把字符串转成数字 不是数字的字符串NaN
  • Math.max() 最大值 Math.min() 最小值 要传入要比较的参数(数组) 其中有 非数字的 就返回NaN 不写参数直接返回Infinity-无穷大 -Infinity-负的无穷大

代码演示 顺便封装一个建议的取最大最小值的函数

console.log(Math.PI) // 一个属性 圆周率
console.log(Math.max(1,2,3)) // 其中有 非数字的 是NaN
console.log(Math.max()) // -Infinity  什么都没有  负的无穷大
var myMath = {
	PI:Math.PI,
	max:function(){
		var max = arguments[0]
		for(var i = 0;i < arguments.length;i  ){
			if(max < arguments[i]){
				max = arguments[i]
			}
		}
		return max
	},
		min:function(){
		var min = arguments[0]
		for(var i = 0;i < arguments.length;i  ){
			if(min > arguments[i]){
				min = arguments[i]
			}
		}
		return min
	}
}
console.log(myMath.PI) 圆周率
console.log(myMath.max(-1,5,0))  5
console.log(myMath.min(-1,5,0))  -1
console.log(Math.floor(1.9)) 向下取整 结果 1
console.log(Math.ceil(1.1))  向上取整  结果 2

Math获取随机数

Math.random() 不用填写参数 对象随机数方法 返回一个随机的小数 0 =< x <1

官方推荐写法得到两个数之间的随机整数 并且包括这两个数

Math.floor(Math.random() * (max - min 1)) min

console.log(Math.random())	
function getRandom(min,max){
	return Math.floor(Math.random() * (max - min  1))  min;
}
// 随机点餐
var food = [
	'烤肉饭',
	'怀府源拉面',
	'相思味快餐',
	'清风炒面',
	'烩面',
	'饸烙面',
	'麻辣香锅',
	'山西刀削面',
	'哨子面',
	'蜀蜀的粉',
	'旋转小火锅',
	'小过道快餐',
	'美团双人餐',
	'油泼面',
]
console.log("明天中午吃"   food[getRandom(0,food.length-1)])
// 三次机会猜牌点
function getRandom(min,max){
	return Math.floor(Math.random() * (max - min  1))  min;
}
var num = getRandom(1,13)
var i = 0
while(i<3){
	var aaa = prompt("猜猜是哪一张扑克牌(1-13)")
	if(aaa > num){
		alert("猜大了")
	}else if(aaa < num){
		alert("猜小了")
	}else if(aaa = num){
		alert("猜对了")
		break
	}
	i  ;
}
if(i >= 3){
	alert('三次机会已经用完')
}	
console.log("答案是" num)
console.log("你猜的结果" aaa)	

String对象

srting.indexOf('xx'):查找xx在string 第一次出现的索引值 可传入第二个参数 从被检索的哪一处开始向后查询 可以使用while 循环 进行字段 全部检索

var article = "后购玉者引众人评理,众人皆言二人有约不守,有言无信。\n匠人自觉面颊臊热,躬身拱手曰:余琢玉十七载,未尝失信于人,此玉誓死必琢之!\n青年虽有苦却难言,愤然离席曰:吾借刀笔,撰雕玉之文以明心志,告辞!\n众购玉者重金求玉而不得,遭人耻笑,胸中大悲,不能自已。\n今人评曰:玉不琢,不成器。人无信不立,业无信不兴。\n二人背信毁约,购玉者何错之有?\n世人吁二人冰释前嫌,合力琢玉成器,棠玉既成,以约交付,方为正道。\n匠人携青年,青年助匠人,顾百姓之安危,救民众于水火,创绝世之佳作,流芳百世!"	
console.log(article)
var index = article.indexOf("青年"),index2 = article.indexOf("匠人")
var appear1 = [],appear2 = []
while(index !== -1){
	appear1.push(index)
	index = article.indexOf("青年",index 1)
}
console.log("青年出现了"  appear1.length   "次")	
console.log("分别在"    appear1)
while(index2 !== -1){
	appear2.push(index2)
	index2 = article.indexOf("匠人",index2 1)
}
console.log("匠人出现了"  appear2.length   "次")	
console.log("分别在"    appear2)

// 根据位置返回字符

console.log(article.charAt(156))

// ASCII 码 键盘对应的码 判断用户按下了哪一个键

console.log(article.charCodeAt(156))

// H5 新增

console.log(article[99])

// 文中出现最多的字符串

var o ={}

for(var i = 0;i<article.length;i ){

var chars = article.charAt(i)

if(o[chars]){

o[chars]

}else{

o[chars] = 1

}

}

console.log(o)

//2. 遍历对象

var max = 0

var ch = ""

for(var k in o){

// k 得到的是 属性名

// o[k] 得到的是属性值

if(o[k] > max){

max = o[k]

ch = k

}

}

console.log("出现次数最多是" ch "它出现了" max "次")

// 字符串的拼接和截取
var myName = "wusonggang"	
console.log(myName.concat("WEB"))	// 一般用加号多一些
// 2.substr(起始的位置,要截取的长度)
console.log(article.substr(84,10))
// 3.slice(起始的位置,截取最后的位置)
console.log(article.slice(129,199))
// 3.substring(起始的位置,截取最后的位置)
console.log(article.substring(77,111))
// 替换字符
console.log(article.replace("青年","JAVD")) // 只会替换第一个
// 用 条件判断 全部替换
while(article.indexOf("匠人") !== -1){
	article = article.replace("匠人","阿钢")
}
console.log(article)
// 字符转换为数组 split('分隔符')  和join 对应
var str7 = "red,pink,black"
console.log(str7.split(","))
var str8 = "red&pink&black"
console.log(str8.split("&"))
var str9 = "WuSongGang"
console.log(str9.toLowerCase())// 全部小写
console.log(str9.toUpperCase())//  全部大写

到此这篇关于JavaScript内置对象Math与String详细介绍的文章就介绍到这了,更多相关JS Math与String内容请搜索Devmax以前的文章或继续浏览下面的相关文章希望大家以后多多支持Devmax!

JavaScript内置对象Math与String详细介绍的更多相关文章

  1. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  2. HTML5数字输入仅接受整数的实现代码

    这篇文章主要介绍了HTML5数字输入仅接受整数的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  3. amaze ui 的使用详细教程

    这篇文章主要介绍了amaze ui 的使用详细教程,本文通过多种方法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  4. HTML5 WebSocket实现点对点聊天的示例代码

    这篇文章主要介绍了HTML5 WebSocket实现点对点聊天的示例代码的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  5. html5简介_动力节点Java学院整理

    这篇文章主要介绍了html5简介,用于指定构建网页的元素,这些元素中的大多数都用于描述网页内容,有兴趣的可以了解一下

  6. ios – 在Swift的UIView中找到UILabel

    我正在尝试在我的UIViewControllers的超级视图中找到我的UILabels.这是我的代码:这是在Objective-C中推荐的方式,但是在Swift中我只得到UIViews和CALayer.我肯定在提供给这个方法的视图中有UILabel.我错过了什么?我的UIViewController中的调用:解决方法使用函数式编程概念可以更轻松地实现这一目标.

  7. ios – 在Swift中将输入字段字符串转换为Int

    所以我非常擅长制作APP广告Swift,我试图在文本字段中做一些非常简单的输入,取值,然后将它们用作Int进行某些计算.但是’vardistance’有些东西不正确它是导致错误的最后一行代码.它说致命错误:无法解开Optional.None解决方法在你的例子中,距离是一个Int?否则称为可选的Int..toInt()返回Int?因为从String到Int的转换可能失败.请参阅以下示例:

  8. 如何在iOS中检测文本(字符串)语言?

    例如,给定以下字符串:我想检测每个声明的字符串中使用的语言.让我们假设已实现函数的签名是:如果没有检测到语言,则返回可选字符串.因此,适当的结果将是:有一个简单的方法来实现它吗?

  9. xamarin – 崩溃在AccountStore.Create().保存(e.Account,“);

    在Xamarin.Forms示例TodoAwsAuth中https://developer.xamarin.com/guides/xamarin-forms/web-services/authentication/oauth/成功登录后,在aOnAuthenticationCompleted事件中,应用程序在尝试保存到Xamarin.Auth时崩溃错误说不能对钥匙串说期待着寻求帮助.解决方法看看你

  10. ios – 将视频分享到Facebook

    我正在编写一个简单的测试应用程序,用于将视频从iOS上传到Facebook.由于FacebookSDK的所有文档都在Objective-C中,因此我发现很难在线找到有关如何使用Swift执行此操作的示例/教程.到目前为止我有这个在我的UI上放置一个共享按钮,但它看起来已禁用,从我读到的这是因为没有内容设置,但我看不出这是怎么可能的.我的getVideoURL()函数返回一个NSURL,它肯定包含视

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部