1.什么是标准库
标准库是指js的标准内置对象,它是js在语言本身开始时提供的一个全局对象
2.对象对象及其实例
JavaScript本地提供了一个对象对象,所有其他对象都继承自该对象对象
对象对象的属性和方法使用控制台目录(对象)来查找对象对象的属性和方法
常用属性或方法介绍:
1 .原型对象
Prototype是Object下的一个原型对象,用于放置从Object继承的其他属性和方法。例如,object . prototype . value of()Object . prototype . tostring()是部署在Object下的原型对象。其他对象如Number对象、String对象或自定义对象var a=new Object()可以继承原型2的属性和方法。对象.键(对象)
keys()方法输入一个实例对象,并返回该对象的属性数组
3.Object.getOwnPropertyNames
[注意] keys方法只返回可枚举的属性,getOwnPropertyNames也返回不可枚举的属性名。
4.对象()本身用作方法
Var a={name:' teren'}对象(a)//传入一个对象实例并返回此实例对象{ name 3360 ' teren ' }//传入一个原始类型值,然后返回与此值对应的包装对象
对象对象实例的属性和方法
对象对象本身是一个构造函数,可以用来构造对象实例
var person=new Object();person.name=' teren//文字方法var person={ name : ' teren ' };[注]所有对象都是由对象构造的;创建对象的方法在字面上等同于用object()构造对象的方法。
在Object.prototype对象上部署了很多Object对象的方法,对象的所有对象实例都继承了这些方法
1.Object.prototype.valueOf()
valueOf()方法返回对象的“值”。默认情况下,返回对象本身
var o={ name : ' teren ' } o . value of()//Object { name : ' teren ' } var p={ name : ' teren ',Age :18 } p . value of()//Object { name : ' teren ',Age : 18 } var q={ } q . value of()//Object { }[注意]value of方法的主要用途是当JavaScript自动转换类型时,将默认调用它
2.object . prototype . tostring()tostring方法返回对象的字符串形式,默认情况下返回类型字符串
var o={ name : ' teren ' } o . tostring()//'[object object]'[注意tostring方法主要是在JavaScript自动转换类型时默认调用此方法。
var o={ } o ' world '///'[Object Object]world ' 3 . hasown property()
HasOwnProperty():确定属性是当前对象本身的属性还是从原型对象继承的属性,如果从原型继承,则返回false。
var o={ name : ' teren ' } o . hasown property(' name ')//trueo . hasown property(' tostring ')//false 4 . properties enumerable():确定是否可以枚举(遍历)属性
Vararr=[1,2,3]for(arr中的var键){console.log (arr [key])} 123arr。properties enumeratable(' 0 ')//true arr。properties enumeratable(' length ')//false 3。数字对象及其实例数字对象对应于数值
对象,即下面示例中显示的所谓包装对象:
Var num=123//这是一个数值数据类型为var num=new Number(123)的数值//这里通过Number函数构造一个对象,使得数值123被包装到Number对象1中Number对象的属性和方法中。NUMBER对象的属性。
号码。max _ valueNumber。min _ valuenumber正数。负无限数。nan[注意]数字对象实例无法获取删除了数字的对象的属性
var x=新数字(123);x . MAX _ VALUE//未定义2。数字对象的方法
1.Number()自己的方法将任何类型的值转换为数值number(100)//100 number(' 100 ')//100 number(' 100 e ')//nannumber([1,2,3])//nannumber(true)//1 number([])//0 number({ })//nan 2 . to fixed()将数字转换为字符串。保留几个小数var a=123a。to fixed(2)//' 123.00 ' a . to fixed(3)//' 123.000 ' a . to fixed(0)/' 123 ' 3。toexponential()将对象的值转换为科学符号“1.2e 2”的字符串a . to exponential(2)/“1.23 e 2”a . to exponential(3)/“1.230 e 2”a . to exponential(4)/“1.2300 e 2”4 . valueof()a . valueof()//1235 . tostring()a . tostring()/“123”6。is inite()Number。is inite(123)//TrueNumber。is inite(nan)//false 7。isnan()号。isnan (nan)//true下图显示了从对象对象继承的数字对象的属性和方法,以及数字对象特有的属性和方法
数字对象实例的属性和方法
//构造Number对象的一个实例var num=new Number(123)[注]Number对象实例应用的属性和方法基本上都包含在Number对象的属性和方法中
4.字符串对象及其实例
字符串对象是字符串的包装对象,字符串对象的实例是使用String()构造函数创建的
字符串对象的属性和方法
1.length属性返回字符串长度
Var str=' 111' str。length//31.string()本身可以用作将其他类型的值转换为字符串的方法string(1)//“1”string(true)/“true”string([1,2,3])/“1,2,3”string([])/“/”string({ name : ' teren ' })//“[object object]”2。charat()返回字符var str=' 123' str。charat (2)//'3' 3。位于指定位置的字符代码。Unicode代码字符串。charcodeat (0)//494.indextof()返回字符所在的位置str.indexOf(1)//05.substring()提取字符var str=' NBA篮球' str。子字符串(1,3)//“ba”字符串。substring (1,5)//' BA B ' 6 . touppercase()toLowerCase()var str=' HELLO ' str . touppercase()/' HELLO ' var strr=' HELLO ' strr . toLowerCase()/' HELLO ' 7 . trim()删除空格var s=' str ' s/' str ' s trim()/' str ' 8。split()并将字符串分成字符串数组var s=' hello ' s split(')/[' h ',' e ',' l ',' l ',O'] var str=' hello world' str。split(')//[' hello ',' world'] 9。Slice (1,5)从下标1(包括元素)开始到下标5(不包括)var str=' hello world' str。切片(1,5)
var str=new String(' hello world ');//literal var str=' hello world '[注意]String对象实例的属性和方法基本上都包含在String对象的属性和方法中
4.布尔对象及其实例布尔对象是布尔值的包装对象,布尔对象是使用布尔构造函数创建的
var a=真;a/“布尔”var b=新的布尔(真)类型b/“对象”[注意]不鼓励布尔()构造布尔对象
6.数组对象数组对象是数组的包装对象
创建数组对象实例
Var array=new Array(1,2,3)//文字方法Vararr=[1,2,3]Array对象的属性
长度属性var arr=[1,2,3]arr.length//3array对象的方法
1 . value of toString()value of返回数组对象的原始值ToString()返回字符串vararr=[1,2,3] arr。valueof ()//[1,2,3] arr。tostring()//“1,2,3”2。添加arr.push() arr.unshift()//一个在尾部,一个在头部,返回新数组arr.push的长度(' h ',' e ',' e ')//6 arr/[1,2,3,' h ',' 1,2,3,' h ',' e ',' e']3。删除数组元素arr . pop(). arr . shift()//一个在尾部,一个在头部,返回删除的元素。每个呼叫只能删除一个vararr=[1,1,1,1,2,3]' arr。pop ()//'e' arr//[1,1,1,2,3,' h ',' e'] arr。shift ()//1 arr//[1,1,2,3,' h E'] arr。拼接(0,4,' w ',' y')//[1,1,1]arr/[' w ',' y ',2,3,' h ',' e ',' e'] 5。连接元素由指定的分隔符分隔。var arr=[1,1,1,1,2,3,' h ',' e ',' e'] arr。join ('-')//'1-1-1-2-3-h-e-e' 6。e']arr.sort()//[1,1,1,1,2,3,' e ',' e ',' h']7.reverse()var arr=[1,1,1,1,1,2,3,' h ',' e ']arr . reverse()/[' e ',' e ',h ',3,2,1,1,1,1]8.concat()合并Array var a=[1,3,4] var b=[4,2,1]a . concat(b)/[1,3,4,2
7.数学对象及其实例数学对象提供了一些数学属性和方法,但是数学对象不能创建实例对象
数学对象的属性
math . emath . ln 2 math . ln 10 math . pimath . sqrt 2 math对象的方法
1.math . ABS(). math . ABS(-9)//92。math . max()math . min()math . max(-1,1,6)//6Math.min(-1,1,6)///-13。Math.pow()Math.pow(2,3)//84 . math . exp()math . exp(2)//7.38905609893064955 . math . sqrt()math . sqrt(3)//1.73205080768726 . math . log()。Math.floor () math.ceil3360接受一个参数,并返回大于该参数的最小整数。Math.floor:接受一个参数。小于此参数的最大整数math . ceil(1.1)//2 math . floor(1.1)//18 . math . round(),用于舍入math . round(0.1)//0 math . round(0.5)//1 math . round(-1.5)29。Math.random()返回一个介于0和1之间的伪随机数,它可能等于0,但必须小于介于1Math.random()*50 50//[50,100]10之间的随机数。三角函数方法11.valueOf() toString()valueOf()返回Math对象的toString的原始值。
日期实例对象的参数日期对象开始于世界协调时1970年1月1日00:00:00
新日期()//2016年6月21日星期二21:45336031 GMT 0800(中国标准时间)新日期(1000)//1970年4月01日0833600:01 GMT 0800(中国标准时间)新日期(3600 * 24 * 10000)//1970年5月02日08:00:00 GMT 0800
1.Date()本身用作方法var today=new Date()2。Date.now()返回1970年1月1日00:00:00世界协调时的毫秒数。date . now()//14665171357303 . date . parse()用于解析日期字符串。返回1970年1月1日00:00:00之间的毫秒数。日期。解析(2015年2月)//1420070400004。日期。UTC()返回从1970年1月1日00:00:00 UTC开始的毫秒数。日期。世界协调时(2015年)
1.to类:返回关于时间和日期的字符串toString():返回完整的日期字符串var d=new Date(2000,0,1)d . toString()/' satjan 01 2000 00:00336000 GMT 0800(中国标准时间)'-toutstring():返回相应的UTC时间var d=new Date()d//2016年6月21日星期二223:00:06
GetTime():返回从1970年1月1日开始的毫秒数00:0000 var d=new Date(2000,0,1)d//satjan 01 2000 00:00336000 GMT 0800(中国标准时间)d . GetTime()//946656000000-getdate():返回与实例对象d.getdate()对应的月份中的某一天。
var d=new Date(2000,0,1)d . setdate(20)//948297600000d//2000年4月20日00:00:00 gmt0800(中国标准时间)-setfull year()d . setfull year(2005)//110615040000000 2005年4月20日00500:0003:000
分钟和秒:0到59小时:0到23周:0(星期日)到6(星期六)日期:1到31个月:0(1月)到11(12月)年份:1900年以来的年份
10.标准图书馆概述
标准库是js最初提供的标准内置对象,分为Object对象、Number对象、String对象、Boolean对象、Array对象、Math对象和Date对象。【注意】有RegExp对象和JSON对象,不限于以上对象。
所有js对象都是由Object对象构造的,包括它的对象实例和诸如Number、String、Boolean、Array、Math和Date等对象。
通常,对象包含属性和方法。属性表示属于对象的一些特征值,方法表示对象的一些功能。
构造函数(数学对象没有)和原型属性通常设置在对象的属性中,有些对象包含长度属性(String和Arrary对象的长度具有实际意义);conStructor设置这个对象的构造函数,prototype设置一个prototype对象——,这样这个对象的构造函数创建的所有对象实例都可以从Prototype对象继承相应的属性;
Object对象的属性和方法是最通用的,大多数可以在其他对象中找到,但是每个对象也有自己的属性和方法(有些只能由对象使用,有些可以由对象实例使用(因为它们部署在各自对象的原型中))
这里,我们来谈谈valueOf()和toString()在不同对象中的效果。通常,valueOf()输出对象的原始值,toString()输出字符串。
var o=new Object(123)var O1=new Object(' 123)o . value of()//123 o . tostring()//' 123 ' O1 . value of()/' 123 ' O1 . tostring()/' 123 ' var O2=[1,2,3]O2 . value of()/[1,2,3]O2 . tostring()/' 1,2,3'var o3={name:'teren ',age333tostring()//'[object object]' number对象是数值对应的包装对象,string对象是String对应的包装对象,Boolean是布尔值对应的包装对象。
var num=123//num的类型-' num ' var num=new Number(123)//num的类型-' object ' var str=' hello ' var str=new String(' hello ')var bool=true;var bool=new Boolean(true)[注]本说明中的大部分材料参考了阮一峰的JavaScript标准参考教程