javascript常用内置对象(什么是“JS”的内置对象)
本文目录
- 什么是“JS”的内置对象
- javascript宿主对象和内置对象的区别是什么
- javascript对象之内置对象Math使用方法
- 什么是“js”的内置对象
- Javascript的内置对象有哪些
- js面向对象的几种方式
- javascript内置对象有哪些
什么是“JS”的内置对象
字符串、数字、布尔值、undefined以及null都是原始类型(primitive)而非对象。而String,Number,Boolean,Object都是语言内置的对象(built-in object),可以通过各自的构造函数得到。
比如子啊JavaScript中,字符串是一个原始类型,他本身没有属性,当你对一个字符串属性运算得时候(如“somestring”.length),javascript引擎会将该字符串包装成一个对象,该对象是通过String构造函数得到的,也就是说“some string”.length实际上是(newString(“some string”)).length。
对象(object)是JavaScript的核心概念,也是最重要的数据类型。
所谓对象,带有属性和方法的数据类型,一般由若干个“键值对”(key-value)构成。如:var obj = content:"Hello xuzhiwen!"大括号定义了一个对象,他被赋值给变量obj,内部包含一对键值对(属性),content是“键名”(属性名),字符串“Hello”是“键值”(属性值)。键名与键值之间用冒号分割。如果有多个键值对,每个键值对之间用都好分隔。
javascript宿主对象和内置对象的区别是什么
ECMA-262 把本地对象(native object)定义为“独立于宿主环境的 ECMAScript 实现提供的对象”。\x0d\x0a 看定义有些不清楚,因为还未了解何为“宿主环境”的时候就引用了“宿主环境”这个概念,着实让人有些发晕。\x0d\x0a 不过,根据我强悍的文学功底,“宿主”一般是指寄生的生物选择的寄生体,这让我想起了“火影”里的“白”。简单说,就是用户的机器环境,包括操作系统和浏览器。\x0d\x0a 再来看一下,“本地对象”包含哪些内容:\x0d\x0a Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError\x0d\x0a 由此可以看出,简单来说,本地对象就是 ECMA-262 定义的类(引用类型)。\x0d\x0a 内置对象\x0d\x0a ECMA-262 把内置对象(built-in object)定义为“由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现”。这意味着开发者不必明确实例化内置对象,它已被实例化了。\x0d\x0a 同样是“独立于宿主环境”。根据定义我们似乎很难分清“内置对象”与“本地对象”的区别。而ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是本地对象,根据定义,每个内置对象都是本地对象)。\x0d\x0a 如此就可以理解了。内置对象是本地对象的一种。而其包含的两种对象中,Math对象我们经常用到,可这个Global对象是啥东西呢?\x0d\x0a Global对象是ECMAScript中最特别的对象,因为实际上它根本不存在,有点玩人的意思。大家要清楚,在ECMAScript中,不存在独立的函数,所有函数都必须是某个对象的方法。\x0d\x0a 类似于isNaN()、parseInt()和parseFloat()方法等,看起来都是函数,而实际上,它们都是Global对象的方法。而且Global对象的方法还不止这些。有关Global对象的具体方法和属性,感兴趣的同学可以看一下这里:JavaScript 全局对象参考手册\x0d\x0a 宿主对象\x0d\x0a 何为“宿主对象”?主要在这个“宿主”的概念上,前面我已经介绍了“火影”,介绍了“白”。而ECMAScript中的“宿主”当然就是我们网页的运行环境,即“操作系统”和“浏览器”。\x0d\x0a 所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。\x0d\x0a 所有的BOM和DOM对象都是宿主对象。因为其对于不同的“宿主”环境所展示的内容不同。其实说白了就是,ECMAScript官方未定义的对象都属于宿主对象,因为其未定义的对象大多数是自己通过ECMAScript程序创建的对象。\x0d\x0a var oPerson =new Object;\x0d\x0a\x0d\x0aoPerson.name=’simaopig’;\x0d\x0a\x0d\x0aoPerson.age=’26’;\x0d\x0a 这里我自己定义的对象oPerson就是宿主对象。因为ECMAScript中未定义此对象,而此对象又只存在于我所运行的页面中。其貌似听起来是一个哲学命题。很奇怪我这款主题居然没有del的样式,残念。
javascript对象之内置对象Math使用方法
一、Math.min()和Math.max(),分别返回参数中的最小和最大值 例: alert(Math.min(1,2,3)) //输出"1" alert(Math.max(1,2,3)) //输出"3"二、Math.abs(),返回参数的绝对值 例: alert(Math.abs(-1)) //输出"1"三、Math.random(),产生一个0到1的随机数 例:***隐藏网址***四、Math.floor(),Math.round(),Math.ceil() Math.floor():把小数向下舍入成整数 例:alert(Math.floor(1.5)) //输出"1" Math.round():把小数标准四舍五入成整数 例:alert(Math.round(1.5)) //输出"2" Math.ceil():把小数向上舍入成整数 例:alert(Math.round(1.5)) //输出"2" 利用这三个函数,在涉及小数计算的时候就非常方便,比如设计如下函数来进行小数处理复制代码代码如下: functiontest(num,flag,bit) //参数分别是要传入的小数"num" 舍入标准(-1,向下;0,标准;1向上)"flag" 保留小数的位数"bit" { varn=Math.pow(10,bit); switch(flag) { case-1:returnMath.floor(num*n)/n;break; case0:returnMath.round(num*n)/n;break; case1:returnMath.ceil(num*n)/n; } }
什么是“js”的内置对象
1、内置对象就是指这个语言自带的一些对象,供开发者使用,这些对象提供了一些常用的或是最基本而必要的功能。
2、浏览器上面跑的JS的内置对象有Math, String,Array, Date, 还有刚才的location。
3、时间对象JavaScript的内置对象,使用前必须先声明。
Date对象中处理时间和日期的方法:
4、方 法 种 类 方 法 名 称 功 能 描 述
获得时间或日期 getDate 获得当前的日期
获得时间或日期 getDay 获得当前的天
获得时间或日期 getHours 获得当前的小时
获得时间或日期 getMinutes 获得当前的分钟
获得时间或日期 getMonth 获得当前的月份
获得时间或日期 getSeconds 获得当前的秒
获得时间或日期 getTime 获得当前的时间(毫秒为单位)
获得时间或日期 getTimeZoneOffset 获得当前的时区偏移信息
获得时间或日期 getYear 获得当前的年份
Javascript的内置对象有哪些
JavaScript内置对象有以下几种。 ● String对象:处理所有的字符串操作 ● Math对象:处理所有的数学运算 ● Date对象:处理日期和时间的存储、转化和表达 ● Array对象:提供一个数组的模型、存储大量有序的数据 ● Event对象:提供JavaScript事件的各种处理信息 JavaScript,是学习PHP和前端都要学习的,你如果想了解更多JavaScript的知识,可以去黑马程序员看免费的视频,学习更多的知识。
js面向对象的几种方式
JavaScript中对象的创建有以下几种方式:(1)使用内置对象(2)使用JSON符号(3)自定义对象构造一、使用内置对象JavaScript可用的内置对象可分为两种:1,JavaScript语言原生对象(语言级对象),如String、Object、Function等;2,JavaScript运行期的宿主对象(环境宿主级对象),如window、document、body等。我们所说的使用内置对象,是指通过JavaScript语言原生对象的构造方法,实例化出一个新的对象。如:复制代码 代码如下:var str = new String("实例初始化String");var str1 = "直接赋值的String";var func = new Function("x","alert(x)");//示例初始化funcvar o = new Object();//示例初始化一个Object二、使用JSON符号(i)何谓JSON ?JSON (JavaScript ObjectNotation)即JavaScript对象命名,是一种轻量级的数据交换格式,易于阅读和编写,同时也易于及其解析和生成。它基于《JavaScript Programming Language, Standard ECMA-262 3rd Edition -December 1999》的一个子集。JSON是完全独立于语言的文本格式,因此成为数据交换的理想格式。JSON作为JavaScript的一个自己,同时ActionScript、C、C#、ColdFusion、E、Java、JavaScript、ML、ObjectiveCAML、Perl、PHP、Python、Rebol、Ruby、Lua等一系列的语言都提供支持,使得JSON成为Ajax开发的首选方案。JSON有两种构建方式,一种是采用简单的“键/值对”的集合,在不同的语言中被理解为对象、记录、结构、字典、哈希表、有键列表,或者关联数组等,另一种采用有序的值列表,大部分语言把它理解为数组。常用的创建方式是第一种,即采用“键/值对”集合的形式。在这种形式下,一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号),“‘键/值’ 对”之间使用“,”(逗号)分隔。JSON具有以下特点:(1)简单格式化的数据交换;(2)易于人们的读写习惯;(3)易于机器的分析和运行。在JavaScript中,JSON被理解为对象。通过字符串形式的JSON,数据可以很方便地解析成JavaScript独享,并进行数据的读取传递。通过JSON,在一定程度上客服了JavaScript对象无法作为参数系列化传递的问题。1,简单的JSON{name:"刘德华",age:"25",sex:"男"}2,JSON值的类型JSON的值可以是简单的数据类型,例如数字、浮点、字符等,也可以是数组及对象。例如以数组作为member键值的JSON:{member:}{book:,author:}3,在JavaScript中使用JSONJSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或者工具包,JavaScript默认将JSON当做一个对象处理。将对象传递给一个变量,例如:复制代码 代码如下:var somebooks = {book:,author:}JSON的每个“键”相当于对象的属性,例如访问book中的第一个条目,在JavaScript中,就可以简单地使用“somebooks.book.name”来获取“三国演义”这个值。我们不但可以将一个JSON字符串转化为对象,反过来将一个对象“编译”为一个JSON字符串,以方便JavaScript中的对象的传输。例如:复制代码 代码如下:var Animals = new Object();Animals.name = "dog";Animals.sex = "Male";Animals.age = "2";Animals对象无法被序列化传输,将Animals对象转化为JSON字符串,也就是“{name:"dog",sex:"Male",age:"2"}”。这样,把该JSON字符串作为HTTP请求的一个参数传递,从而达到序列化传输Animals对象的目的。(ii)JSON通过字符串形式来表达JavaScript的对象。如:复制代码 代码如下:var myObject = {nickname:"my girlfried",name:"bigpig"};JSON实际上充当了一种在JavaScript对象和字符串之间实现相互转换的协议。由于JSON的“外表”可以看成但村的字符串,因此JSON在JavaScript的对象传输方面可以起到一定的作用。例如把对象strObject转换成字符串后进行传输,在达到目的地后通过eval方法将其还原成对象:复制代码 代码如下:function test (o){alert (o.name)}var strObject = ’{nickname:"my girlfriend",name:"big pig"}’;test (eval_r("(" + strObject + ")"));三、自定义对象构造创建高级对象构造有两种方式:使用“this”关键字构造、使用原型prototype构造。如:复制代码 代码如下://使用this关键字定义构造的上下文属性function Girl(){this.name = "big pig";this.age = 20;this.standing;this.bust;this.waist;this.hip;}//使用prototypefunction Girl(){}Girl.prototype.name = "big pig";Girl.prototype.age = 20;Girl.prototype.standing;Girl.prototype.bust;Girl.prototype.waist;Girl.prototype.hip;alert(new Girl().name);上例中的两种定义在本质上没有区别,都是定义“Girl”对象的属性信息。“this”与“prototype”的区别主要在于属性访问的顺序。如:复制代码 代码如下:function Test(){this.text = function(){alert("defined by this");}}Test.prototype.test = function(){alert("defined by prototype");}var _o = new Test();_o.test();//输出“defined by this”当访问对象的属性或者方法是,将按照搜索原型链prototypechain的规则进行。首先查找自身的静态属性、方法,继而查找构造上下文的可访问属性、方法,最后查找构造的原型链。“this”与“prototype”定义的另一个不同点是属性的占用空间不同。使用“this”关键字,示例初始化时为每个实例开辟构造方法所包含的所有属性、方法所需的空间,而使用“prototype”定义,由于“prototype”实际上是指向父级的一种引用,仅仅是个数据的副本,因此在初始化及存储上都比“this”节约资源。
javascript内置对象有哪些
javaScript 内置对象列表:Arguments 函数参数集合Array 数组Boolean 布尔对象Date 日期时间Error 异常对象Function 函数构造器Math 数学对象Number 数值对象Object 基础对象RegExp 正则表达式对象String 字符串对象
更多文章:
centos java环境配置(如何在阿里云Centos7.0上配置java web环境)
2024年8月5日 22:10
myeclipse中文乱码怎么解决(myeclipse文件打开乱码怎么解决)
2024年7月20日 04:11
netbeans和eclipse哪个好(为什么学习Java编程很有必要)
2024年5月10日 02:18
隔壁软件特效(有什么软件可以这个手机录音另外一个可以听见的软件举个例两个房间距离10米想听隔壁的声音隐秘的)
2024年7月25日 18:55
instanceof 泛型(Java获取泛型对象中的某个属性值)
2024年5月26日 20:37
computer怎么读音(computer这个英语单词怎么读)
2023年12月28日 22:00
c语言中输入n个学生的成绩(c语言数组输入N个学生成绩,然后将平均成绩计算出来)
2024年7月7日 18:03
stern什么意思?severe,serious,strict,stern有何区别
2024年7月19日 05:13
chicken pox(I have chicken pox是什么意思)
2024年6月13日 06:23