首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js对象

js对象 在编程语言中,提到对象,一般都含有一个隐藏上下文面向对象编程。 面向对象编程(Object Oriented Programming,缩写为 OOP)是目前主流编程范式。..., cedf:function(){console.info("cdef")}, "arr":[1,2,3], o:{"name":"jake"} } “在js对象是属性无序集合...2. js对象分类 众观整个js对象,可以分成三类: 内置对象 宿主对象 自定义对象 2.1 内置对象 “由ECMA实现、不依赖于宿主环境对象,这些对象js程序执行之前就已经存在了”。...js有两个运行环境: (1) 浏览器。我们在.html文件中加入js代码,再通过浏览器来打开,这里浏览器就是javascript运行环境。 在浏览器端js而言,宿主对象就是浏览器对象。...nodejs也提供了运行js代码环境。在node中有一个global对象 2.3 自定义对象 这才是我们展示身手地方。例如: $, Vue 等等。 3.

6.9K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JsSymbol对象

    JsSymbol对象 ES6引入了一种新基本数据类型Symbol,表示独一无二值,最大用法是用来定义对象唯一属性名,Symbol()函数会返回symbol类型值,该类型具有静态属性和静态方法...该数据类型通常被用作一个对象属性键值,例如当想使对象属性键为私有值时。symbol类型键存在于各种内置JavaScript对象,同样自定义类也可以这样创建私有成员。...和Symbol()不同是,用Symbol.for()方法创建symbol会被放入一个全局symbol注册表。...key: 一个字符串,作为symbol注册表与某symbol关联键,同时也会作为该symbol描述。...在JavaScript,虽然大多数类型对象在某些操作下都会自动隐式调用自身valueOf()方法或者toString()方法来将自己转换成一个原始值,但symbol对象不会这么干,symbol对象无法隐式转换成对应原始值

    5.1K00

    JsString对象

    JsString对象 String全局对象是一个用于字符串或一个字符序列构造函数。...描述 创建一个字符串可以通过字面量方式,通过字面量创建字符串变量在调用方法时候能够自动转化为临时包装对象,从而能够调用其构造函数原型方法,也可以利用String对象生成字符串对象,此外在ES6...事实上,Js基本数据类型值不可变,基本类型值一旦创建就不能被改变,所有操作只能返回一个新值而不能去改变旧值。...)); // true String.prototype.indexOf() str.indexOf(searchValue [, fromIndex]) indexOf()方法返回调用String对象第一次出现指定值索引...,如果传入一个非正则表达式对象regexp,则会使用new RegExp(regexp)隐式地将其转换为正则表达式对象,如果匹配成功,则search()返回正则表达式在字符串首次匹配项索引,否则返回

    7.7K20

    JsProxy对象

    JsProxy对象 Proxy对象用于定义基本操作自定义行为,例如属性查找、赋值、枚举、函数调用等。...handler: 一个通常以函数作为属性对象,各属性函数分别定义了在执行各种操作时代理proxy行为。...代理允许拦截在目标对象底层操作,而这原本是Js引擎内部能力,拦截行为使用了一个能够响应特定操作函数,即通过Proxy去对一个对象进行代理之后,我们将得到一个和被代理对象几乎完全一样对象,并且可以从底层实现对这个对象进行完全监控...,其返回一个包含了代理对象本身和它撤销方法可撤销Proxy对象。...target: 将用Proxy封装目标对象,可以是任何类型对象,包括原生数组,函数,甚至可以是另外一个代理对象

    2.6K20

    JSArguments对象

    描述 arguments 是一个对应于传递给函数参数类数组对象。 arguments对象是所有(非箭头)函数中都可用局部变量。你可以使用arguments对象在函数引用函数参数。...此对象包含传递给函数每个参数,第一个参数在索引0处。...arguments[@@iterator] 返回一个新 Array 迭代器 对象,该对象包含参数每个索引值。 特点 arguments对象和Function是分不开。...答案是: 输出结果如下: 10 2 解析: 1.第一次输出是 10 ,是因为执行了 method 第一个 fn() 函数,这时打印出来 length 指的是 window 定义 length...2.第二次输出了 2 ,这时候执行了 method 第二句。arguments[0]() ( arguments[0] ==> fn() ),此时 this 指向到了arguments对象上。

    2.2K20

    JsMath对象

    JsMath对象 Math是一个内置对象,它拥有一些数学常数属性和数学函数方法,Math用于Number类型,其不支持BigInt。...描述 Math不是一个函数对象,也就是说Math不是一个构造器,Math所有属性与方法都是静态,例如引用圆周率写法是Math.PI,Math常量是使用JavaScript全精度浮点数来定义...,需要注意是,很多Math函数都有一个精度,而且这个精度在不同实现也是不相同,这意味着不同浏览器会给出不同结果,甚至在不同系统或架构下,相同Js引擎也会给出不同结果,另外三角函数sin...,其还避免了幅值过大问题,Js中最大双精度浮点数是Number.MAX_VALUE = 1.797...e+308,如果计算数字比约1e154大,计算其平方值会返回Infinity,使计算结果出现问题...Math.max()函数返回一组数最大值。

    5.2K32

    JsRegExp对象

    JsRegExp对象 RegExp对象表示正则表达式,是由普通字符和特殊字符也叫元字符或限定符组成文字模板,用于对字符串执行模式匹配。...,返回一个结果数组或null,在设置了global或sticky标志位情况下,RegExp对象是有状态,其会将上次成功匹配后位置记录在lastIndex属性,使用此特性exec()可用来对单个字符串多次匹配结果进行逐条遍历包括捕获到匹配...,如果传入一个非正则表达式对象regexp,则会使用new RegExp(regexp)隐式地将其转换为正则表达式对象,如果匹配成功,则search()返回正则表达式在字符串首次匹配项索引,否则返回...,返回一个结果数组或null,在设置了global或sticky标志位情况下,RegExp对象是有状态,其会将上次成功匹配后位置记录在lastIndex属性,使用此特性exec()可用来对单个字符串多次匹配结果进行逐条遍历包括捕获到匹配...(pattern): 匹配pattern并获取这一匹配,所获取匹配可以从产生Matches集合得到,在VBScript中使用SubMatches集合,在JS则使用1…9属性,要匹配圆括号字符,请使用

    10.6K20

    JS特殊对象-数组

    前言 之前学习数据类型,只能存储一个值(比如:Number/String)。我想在一个变量存储多个值,应该如何存储?...特别注意:JS不像PHP,没有关联数组. 1.2 获取数组元素 // 格式:数组名[下标] 下标又称索引 // 下标从0开始 // 功能:获取数组对应下标的那个值,如果下标不存在,则返回undefined..."pink"; 1.5 数组操作案例 案例1:求数组所有数和 //求和 var arr = [10, 20, 30, 40, 50]; //定义变量存储和 var sum = 0; for (var...i = 0; i < arr.length; i++) { sum += arr[i]; } console.log("和为:" + sum); 案例2:获取数组最大值 //最大值 var...arr = [10, 20, 30, 40, 50, 60]; //假设这个变量值是最大 var maxNum = arr[0]; //遍历数组 for (var i = 0; i < arr.length

    9.1K00

    JsNumber对象

    JsNumber对象 JavaScriptNumber对象是经过封装从而能够处理数字值对象,Number对象由Number()构造器以及字面量声明值在转化为包装对象时创建,JavaScript...描述 创建一个数字可以通过字面量方式,通过字面量创建数字变量在调用方法时候能够自动转化为临时包装对象,从而能够调用其构造函数原型方法,也可以利用Number对象生成数值对象,,JavaScript...()函数相同,并且处于ECMAScript 6规范,用于全局变量模块化。...,把字符串解析成整数,如果无法被解析成整数,则返回NaN,该方法与全局parseInt()函数相同,并且处于ECMAScript 6规范,用于全局变量模块化。...在旧实现,会忽略locales和options参数,使用语言环境和返回字符串形式完全取决于实现方式。

    3.4K42

    JsArray对象

    JsArray对象 JavaScriptArray对象是用于构造数组全局对象,数组是类似于列表高阶对象。 描述 在JavaScript通常可以使用Array构造器与字面量方式创建数组。...当然对于稀疏数组在各种浏览器中会存在优化操作,例如在V8引擎中就存在快数组与慢数组转化,此外在V8对于empty描述是一个空对象引用。...此外如果将数组索引设置为-1或者字符串等,数组length不会发生改变,此时数组这些索引将作为对象属性处理,实际上数组就是可以按照索引值来排序数据集合,是一种特殊对象。...() entries()方法返回一个新Array Iterator对象,该对象包含数组每个索引键/值对,Array Iterator对象原型__proto__:Array Iterator上有一个...options 一个可配置属性对象。 toLocaleString()返回一个字符串表示数组元素。

    9.9K00

    JS遍历对象方法讲解

    ---在JavaScript,有几种常用方法可以用来遍历对象:for...in循环使用for...in循环可以遍历一个对象所有可枚举属性。它会将属性名逐个赋值给循环变量,并执行循环体内代码。...如果只想遍历对象自身属性,可以通过hasOwnProperty()方法来判断属性是否为对象自身属性。...如果需要获取属性值,可以通过对象和属性名使用下标访问方式来获取属性值。...对象属性在内部存储时是没有固定顺序,因此遍历顺序不一定与属性定义顺序相同。...你可以选择其中一种方法根据需要遍历对象属性。Object.keys()方法结合forEach()循环Object.keys(obj)会返回一个包含对象自身可枚举属性数组。

    46530

    JS面向对象设计原则

    本篇来讨论为什么程序开发推荐使用面向对象编程。 程序执行有几种套路:顺序执行、判断执行和循环执行。我认为程序其实就是一个个或好或差单元组成大单元,计算机对这个大单元进行执行计算过程。...这个合理优化过程,在程序世界,就需要通过面向对象方法来把一个个小单元进行合理结构化。 所以,程序执行不管使用何种套路,都应具有良好结构化特性。面向对象其实就是把数据进行结构化。...,对修改封闭 增加需求时,扩展新代码,而非修改已有代码 这是软件设计终极目标 L:李氏置换原则 子类能够覆盖父类 父类能出现地方子类就能出现 JS较少使用(弱类型&继承使用较少) I:接口独立原则...保持接口单一独立,避免出现“胖接口” JS没有接口,使用较少 类似于单一接口,这里更关注接口 D:依赖倒置原则 面向接口编程,依赖于抽象而不依赖于具体 使用方只关注接口而不关注具体类实现 JS中使用较少...至于then()能链式调用,是因为then()方法返回也是一个promise对象 30*/ 上例说明: 单一职责原则:每个then逻辑只做好一件事 开放封闭原则:如果新增需求,直接通过新增then

    1.1K20

    前端基础-JS特殊对象(数组)

    第6章 JS特殊对象-数组 之前学习数据类型,只能存储一个值(比如:Number/String)。我们想在一个变量存储多个值,应该如何存储?...[0]);//undefined 数组元素可以是任意类型数据,因此,有时数组某个元素值又是一个数组,而这样数组被称为多维数组,如果数组只有其他类型数据,而没有另外数组值,这样数组被称为一维数组...; 通常,数组被嵌套N层,则称为N维数组,最常见就是二维数组、三维数组、四维数组,超过一维数组都会被泛称为多维数组; 数组维度值越大,复杂度就越高,开发尽量避免产生高维度值数组; var arr1..."pink"; 6.5 数组操作案例 案例1:求数组所有数和 //求和 var arr = [10, 20, 30, 40, 50]; //定义变量存储和 var sum = 0; for (var...arr = [10, 20, 30, 40, 50, 60]; //假设这个变量值是最大 var maxNum = arr[0]; //遍历数组 for (var i = 0; i < arr.length

    3.1K20
    领券