웹 프론트엔드 프런트엔드 Q&A ecmascript의 내장 객체는 무엇입니까?

ecmascript의 내장 객체는 무엇입니까?

Dec 06, 2021 pm 03:23 PM
ecmascript 내장 객체

ecmascript에 내장된 객체에는 전역 객체, 객체 객체, 함수 객체, 배열 객체, 문자열 객체, 부울 객체, 숫자 객체, 수학 객체, 날짜 객체, RegExp 객체, JSON 객체 및 오류 객체가 포함됩니다.

ecmascript의 내장 객체는 무엇입니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, ECMAScript 버전 6, Dell G3 컴퓨터.

ECMAScript는 ECMAScript 엔터티의 정의를 개략적으로 설명하는 내장 객체 세트를 정의합니다.

이러한 내장 개체에는

전역 개체, 개체 개체, 함수 개체, 배열 개체, 문자열 개체, 부울 개체, 숫자 개체, 수학 개체, 날짜 개체, RegExp 개체, JSON 개체 및 오류 개체: 오류, EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError.

전역 개체

유일한 전역 개체는 제어가 실행 환경에 들어가기 전에 설정됩니다.

달리 지정하지 않는 한, 전역 객체의 표준 내장 속성은 {[[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true} 속성을 갖습니다.

전역 개체에는 [[Construct]] 내부 속성이 없습니다. 전역 개체는 new 연산자를 사용하여 생성자로 호출할 수 없습니다.

전역 객체에는 [[Call]] 내부 속성이 없으며 전역 객체를 함수로 호출할 수 없습니다.

전역 개체의 [[Prototype]] 및 [[Class]] 내부 속성 값은 구현에 따라 다릅니다.

이 사양에 정의된 속성 외에도 전역 개체에는 추가 호스트 정의 속성이 있을 수도 있습니다. 전역 객체는 값이 전역 객체 자체인 속성을 포함할 수 있습니다. 예를 들어 HTML 문서 객체 모델에서 전역 객체의 창 속성은 전역 객체 자체입니다.

Object 객체

Object 생성자를 함수로 호출

Object가 생성자가 아닌 함수로 호출되면 유형 변환을 수행합니다.

Object ( [ value ] )
로그인 후 복사

매개변수 값이 있거나 매개변수 없이 Object 함수를 호출하는 경우 다음 단계가 사용됩니다.

  • 값이 null이거나 정의되지 않거나 지정되지 않은 경우 새 Object 개체가 생성되고 반환됩니다. 동일한 매개변수로 호출하면 표준 내장 Object 생성자(15.2.2.1)의 결과는 동일합니다.

Object 생성자

를 반환합니다. 새로운 표현식 호출의 경우 생성자가 객체를 생성합니다.

new Object ( [ value ] )

매개변수 값이 있거나 매개변수 없이 Object 생성자를 호출하는 경우 다음 단계를 수행합니다.

  • 값이 제공되면 Type(value)이 Object인 경우 value가 기본 ECMAScript 객체인 경우 새 객체를 생성하지 않고 단순히 값을 반환합니다. value가 호스트 객체인 경우 작업을 수행하고 구현에 따른 결과를 반환하면 해당 결과가 호스트 객체에 종속될 수 있습니다. Type(값)이 Boolean이면 ToObject(값)을 반환합니다. Type(값)이 Number이면 ToObject(값)을 반환합니다.

  • Assertion: 매개변수 값이 제공되지 않거나 해당 값입니다. 유형이 Null이거나 정의되지 않았습니다.

  • obj를 새로 생성된 기본 ECMAScript 객체로 둡니다.

  • obj의 [[Prototype]] 내부 속성을 표준 내장 객체(15.2.4)의 프로토타입 객체로 설정합니다. ).

  • obj의 [[Class]] 내부 속성을 "Object"로 설정합니다.

  • obj의 [[Extensible]] 내부 속성을 true로 설정합니다.

  • obj의 8.12에서 모든 내부 메서드를 지정하도록 설정합니다

  • Return obj.

Function 객체

함수 생성자를 함수로 호출

함수가 생성자가 아닌 함수로 호출되면 새로운 함수 객체를 생성하고 초기화합니다. . 따라서 함수 호출 Function(…)은 동일한 매개변수를 사용하여 새 Function(…) 표현식과 동일한 객체를 생성합니다.

Function (p1, p2, … , pn, body)
로그인 후 복사

p1, p2, …, pn, body를 매개변수로 사용하여 Function 함수를 호출할 때(여기서 n은 0이 될 수 있습니다. 즉, "p" 매개변수가 없으며 지금은 body를 제공할 필요가 없음을 의미합니다), 다음 단계를 사용하십시오.

  • 새 표현식을 사용하여 표준 내장 생성자 Function(15.3.2.1)과 동일한 매개변수를 사용하여 새 함수 객체를 생성하고 반환합니다.

함수 생성자

함수가 새 표현식의 일부로 호출되면 생성자입니다. 새로 생성된 개체를 초기화합니다.

new Function (p1, p2, … , pn, body)
로그인 후 복사

마지막 매개변수는 함수의 본문(실행 코드)으로 지정됩니다. 이전 매개변수는 형식 매개변수로 지정됩니다.

p1, p2, …, pn, body를 매개변수로 사용하여 함수 생성자를 호출할 때(여기서 n은 0일 수 있습니다. 즉, "p" 매개변수가 없으며 현재 body를 제공할 필요가 없음을 의미함) 다음 단계:

  • 令 argCount 为传给这个函数调用的参数总数 .

  • 令 P 为空字符串 .

  • 如果 argCount = 0, 令 body 为空字符串 .

  • 否则如果 argCount = 1, 令 body 为那个参数 .

  • 否则 , argCount > 1令 firstArg 为第一个参数 .令 P 为 ToString(firstArg).令 k 为 2.只要 k < argCount 就重复令 nextArg 为第 k 个参数 .令 P 为之前的 P 值,字符串 ","(一个逗号),ToString(nextArg) 串联的结果。k 递增 1.令 body 为第 k 个参数 .

  • 令 body 为 ToString(body).

  • 如果 P 不可解析为一个 FormalParameterListopt,则抛出一个 SyntaxError 异常 .

  • 如果 body 不可解析为 FunctionBody,则抛出一个 SyntaxError 异常 .

  • 如果 body 是严格模式代码 ( 见 10.1.1),则令 strict 为 true, 否则令 strict 为 false.

  • 如果 strict 是 true, 适用 13.1 指定抛出的任何异常 .

  • 返回一个新创建的函数对象,它是依照 13.2 指定 -- 专递 P 作为 FormalParameterList,body 作为 FunctionBody,全局环境作为 Scope 参数,strict 作为严格模式标志 -- 创建的。

每个函数都会自动创建一个 prototype 属性,用来支持函数被当做构造器使用的可能性。

为每个形参指定一个参数是允许的,但没必要。例如以下三个表达式产生相同的结果:

new Function("a", "b", "c", "return a+b+c") new Function("a, b, c", "return a+b+c") new Function("a,b", "c", "return a+b+c")
로그인 후 복사

Array 对象

数组是值的有序集合,数组中的每个值称为一个元素,每个元素在数组中都有一个数字位置,称为索引,索引从 0 开始,依次递增。在 JavaScript 中,您可以使用 Array 对象定义数组,此外,Array 对象中还提供了各种有关数组的属性和方法。

创建 Array 对象的语法格式如下:

var arr = new Array(values);
var arr = Array(values);
로그인 후 복사

其中,values 为数组中各个元素组成的列表,多个元素之间使用逗号分隔。

String 对象

String 对象用于处理字符串,其中提供了大量操作字符串的方法,以及一些属性。

创建 String 对象的语法格式如下:

var val = new String(value);
var val = String(value);
로그인 후 복사

其中参数 value 为要创建的字符串或字符串对象。

JavaScript 中,字符串和字符串对象之间能够自由转换,因此不论是创建字符串对象还是直接声明字符串类型的变量,都可以直接使用字符串对象中提供的方法和属性。

Boolean对象

JavaScript 布尔值可以有以下两个值之一:true 或 false。

作为函数调用布尔构造器

当把 Boolean 作为函数来调用,而不是作为构造器,它执行一个类型转换。

Boolean (value)
로그인 후 복사

返回由 ToBoolean(value) 计算出的布尔值(非布尔对象)。

布尔构造器

当 Boolean 作为 new 表达式的一部分来调用,那么它是一个构造器:它初始化新创建的对象。

new Boolean (value)
로그인 후 복사

新构造对象的 [[Prototype]] 内部属性设定为原始布尔原型对象,它是 Boolean.prototype (15.6.3.1) 的初始值。

新构造对象的 [[Class]] 内部属性设定为 "Boolean"。

新构造对象的 [[PrimitiveValue]] 内部属性设定为 ToBoolean(value)。

新构造对象的 [[Extensible]] 内部属性设定为 true。

Number 对象

在 JavaScript 中您可以使用十进制、十六进制或八进制表示法来表示整数或浮点数。与其它编程语言不同,JavaScript 中的数字并不区分整数和浮点数,统一使用 IEEE754 标准(二进制浮点数算术标准)的 64 位浮点格式表示数字,能表示的最大值(Number.MAX_VALUE)为 ±1.7976931348623157e+308,最小值(Number.MIN_VALUE)为 ±5e-324。示例代码如下:

var x = 123;    // 整数
var y = 3.14;   // 浮点数
var z = 0xff;   // 十六进制数:255
로그인 후 복사

对于比较大的数字可以使用指数表示法来表示,例如 6.02e+23 等于 6.02 x 10²³,示例代码如下:

var x = 1.57e4;     // 等于 15700
var y = 4.25e+6;    // 等于 4250000
var z = 4.25e-6;    // 等于 0.00000425
로그인 후 복사

提示:JavaScript 中能够表示的最大的整数是 2⁵³ - 1,即 9007199254740991,能够表示的最小整数是 -(2⁵³ - 1),即 -9007199254740991。

除了可以使用十进制表示数字外,您也可以使用八进制或十六进制表示法来表示数字,其中八进制表示法使用 0 作为前缀,十六进制表示法使用 0x 作为前缀,示例代码如下:

var a = 0377;     // 等于 255
var b = 0123;     // 等于 83
var c = 0xff;     // 等于 255
var d = 0xb4;     // 等于 180
로그인 후 복사

注意:整数可以用十进制、十六进制和八进制表示法表示,浮点数可以用十进制或指数表示法表示。

Math 对象

Math 是 JavaScript 中的一个内置对象,其中提供了一些数学中常用的常量值和函数,用来实现一些数学中常见计算,例如计算平均数、求绝对值、四舍五入等。

与前面介绍的几个对象(例如 Number 对象、String 对象、Array 对象等)不同,调用 Math 对象中的属性和方法无需预先使用 new 运算符来创建它,直接将 Math 作为对象调用即可,例如:

var pi_val = Math.PI;                 // 数学中 π 的值:3.141592653589793
var abs_val = Math.sin(-5.35);  // -5.35 的绝对值:5.35
로그인 후 복사

Math 对象是拥有一些命名属性的单一对象,其中一些属性值是函数。

Math 对象的 [[Prototype]] 内部属性值是标准内置 Object 原型对象 (15.2.4)。Math 对象的 [[Class]] 内部属性值是 "Math"。

Math 对象没有 [[Construct]] 内部属性 ; Math 对象不能作为构造器被 new 运算符调用。

Math 对象没有 [[Call]] 内部属性;Math 对象不能作为函数被调用。

Date 对象

Date 对象是 JavaScript 内置的对象,通过它您可以访问计算机系统的时间,此外,Date 对象中还提供了多种用于管理、操作和格式化时间/日期的方法。

RegExp ( 正则表达式 ) 对象

一个 RegExp 对象包含一个正则表达式和关联的标志。

正则表达式的格式和功能是以 Perl 5 程序语言的正则表达式设施为蓝本的。

JavaScript 字符串是在编程中使用最多的一种数据类型,很多地方都需要对字符串进行操作,例如判断一个字符串是否为一个合法的 E-mail 地址、从字符串截取指定的部分等。

正则表达式是一种用于匹配字符串或特殊字符的一种逻辑公式,所谓逻辑公式就是由一些特定字符组合成的,用来表示某些规则的特殊字符串,可以表达对字符串数据的过滤逻辑。

在 JavaScript 中需要借助 RegExp 对象来使用正则表达式,要创建 RegExp 对象有两种方法,如下所示:

var patt = new RegExp(pattern, modifiers);
var patt = /pattern/modifiers;
로그인 후 복사

参数说明如下:

  • pattern:正则表达式,按照正则表达式的语法定义的正则表达式;

  • modifiers:修饰符,用来设置字符串的匹配模式。

JSON 对象

JSON 对象是一个单一的对象,它包含两个函数,parse 和 stringify,是用于解析和构造 JSON 文本的。JSON 数据的交换格式在 RFC4627 里进行了描述。 。本规范里面的 JSON 交换格式会使用 RFC4627 里所描述的,以下两点除外:

  • ECMAScript JSON 文法中的顶级 JSONText 产生式是由 JSONValue 构成,而不是 RFC4627 中限制成的 JSONObject 或者 JSONArray。

  • 确认 JSON.parse 和 JSON.stringify 的实现,它们必须准确的支持本规范描述的交换格式,而不允许对格式进行删除或扩展。这一点要区别于 RFC4627,它允许 JSON 解析器接受 non-JSON 的格式和扩展。

 JSON 对象内部属性 [[Prototype]] 的值是标准内建的 Object 原型对象(15.2.4)。内部属性 [[Class]] 的值是“JSON”。内部属性 [[Extensible]] 的值设置为 true。

 JSON 对象没有内部属性 [[Construct]];不能把 JSON 对象当作构造器来使用 new 操作符。

 JSON 对象没有内部属性 [[Call]]; 不能把 JSON 对象当作函数来调用。

Error 对象

Error对象的实例在运行时遇到错误的情况下会被当做异常抛出。Error对象也可以作为用户自定义异常类的基对象。

【相关推荐:javascript学习教程

위 내용은 ecmascript의 내장 객체는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

es2017은 es6입니까, es8입니까? es2017은 es6입니까, es8입니까? Oct 27, 2022 pm 05:37 PM

es2017은 es8입니다. es의 정식 명칭은 "ECMAScript"이며, ECMA-262 표준에 따라 구현된 범용 스크립트 언어입니다. 2017년 6월에 정식 출시된 버전은 ECMAScript의 8번째 버전이기 때문에 정식 명칭은 ECMAScript2017입니다. es8이라고 할 수 있습니다.

ES6~ES12의 모든 기능을 빠르고 자세하게 설명하는 글을 하나! ES6~ES12의 모든 기능을 빠르고 자세하게 설명하는 글을 하나! Jul 22, 2022 am 11:06 AM

이 기사에서는 ECMAScript의 기능을 정리하고 공유할 것입니다. ES6~ES12의 모든 기능을 빠르게 이해하는 데는 한 시간이 걸릴 것입니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

일반적인 PHP 내장 객체 사용 방법 배우기: 내장 객체의 작동 및 사용법을 숙지하세요. 일반적인 PHP 내장 객체 사용 방법 배우기: 내장 객체의 작동 및 사용법을 숙지하세요. Jan 10, 2024 am 10:02 AM

PHP 내장 객체 마스터: 일반적으로 사용되는 내장 객체의 작동 및 사용법을 배우십시오. 널리 사용되는 백엔드 개발 언어로서 PHP는 개발 및 개발에 도움이 되는 많은 강력한 내장 객체를 제공합니다. 웹사이트를 효율적으로 관리하세요. PHP 개발자에게는 이러한 내장 개체의 작동과 사용법을 익히는 것이 중요합니다. 이 기사에서는 일반적으로 사용되는 PHP 내장 개체를 소개하고 특정 코드 예제를 제공합니다. 1. 문자열 처리 객체(String) 문자열 처리는 웹 개발, PHP에서 자주 사용된다.

Python의 내장 객체는 무엇입니까? Python의 내장 객체는 무엇입니까? Nov 08, 2023 am 10:19 AM

Python 내장 객체에는 10가지 유형이 있습니다: "int", "float", "str", "list", "tuple", "dict", "set", "bool", "NoneType" 및 "function" : 1. 정수 값을 나타내는 데 사용되는 int 2. 실수 값을 나타내는 데 사용되는 str 4. 일련의 정렬된 요소를 저장하는 데 사용되는 목록 6 , dict, 키-값 쌍 등을 저장하는 데 사용되는 데이터 구조입니다.

ASP의 내장 개체는 무엇입니까? ASP의 내장 개체는 무엇입니까? Nov 09, 2023 am 11:32 AM

ASP 내장 개체에는 Request, Response, Session, Application, Server, Session.Contents, Application.Contents, Server.CreateObject, Server.MapPath, Server.Execute, Server.Transfer 등이 포함됩니다. 자세한 소개: 1. 요청: HTTP 요청 개체 등을 나타냅니다.

Vue의 내장 객체는 무엇입니까? Vue의 내장 객체는 무엇입니까? Nov 08, 2023 pm 04:52 PM

Vue의 내장 객체에는 Vue, Vue 인스턴스, 데이터, el, 옵션, 상위, 루트, 하위, 슬롯, 범위가 지정된Slots, refs, isServer, attrs 및 리스너가 포함됩니다. Vue.js는 사용자 인터페이스 구축을 위한 진보적인 JavaScript 프레임워크입니다. Vue.js에는 Vue 애플리케이션을 생성하고 관리하는 데 사용할 수 있는 내장 개체 또는 전역 API가 있습니다.

nodejs에 내장된 객체는 무엇인가요? nodejs에 내장된 객체는 무엇인가요? Nov 07, 2023 pm 03:33 PM

Nodejs 내장 개체에는 전역, 프로세스, 버퍼, 콘솔, 타이머, EventEmitter, 스트림, 파일 시스템, HTTP, URL, 쿼리 문자열, 암호화, 경로, OS 등이 포함됩니다. 자세한 소개: 1. 글로벌(Global): 브라우저 환경의 창 개체와 유사한 전역 개체로 어디에서나 액세스할 수 있습니다. 2. 프로세스 등.

JSP 내장 객체란 무엇입니까? JSP 내장 객체란 무엇입니까? Nov 03, 2023 pm 02:36 PM

JSP 내장 개체는 JSP에 미리 정의된 일부 개체를 참조합니다. 페이지에서 직접 사용할 수 있는 이러한 기본 제공 개체는 많은 유용한 기능과 속성을 제공하므로 개발자가 데이터를 더 쉽게 처리하고 조작할 수 있습니다. JSP의 일반적인 내장 객체에는 요청 객체, 응답 객체, 출력 객체, 세션 객체, 애플리케이션 객체, 구성 객체, pageContext 객체, 예외 객체 등이 포함됩니다.

See all articles