当前位置: 首页 > Web前端 > JavaScript

java开发中常用的Javascript对象方法整理分享

时间:2023-03-27 11:00:59 JavaScript

Javascript对象方法是包含内置函数定义的属性,java训练用于高效处理和获取单个对象的信息。语法:ObjectName.methodName()在本文中,我们将讨论Javascript中最常用的7个对象方法,它们将帮助您更轻松地使用对象原型!1、Object.is()Object.is()是判断两个值是否相同的方法。语法:Object.is(value1,value2);参数:value1:要比较的第一个值。value2:要比较的第二个值。返回值:一个布尔表达式,指示两个参数是否具有相同的值。示例://情况1:评估结果与使用'==='相同Object.is(25,25);//trueObject.is('foo','bar');//falseObject.is(foo,foo);//true//情况2:带符号的zeroObject.is(0,-0);//falseObject.is(0n,-0n);//true//情况3:NaNObject.is(NaN,0/0);//trueObject.is(NaN,Number.NaN)//true2,Object.assign()Object.assign()方法用于将所有可枚举的自身属性从一个或多个源对象复制到目标。语法:Object.assign(target,...sources)参数:target:目标对象——应用源属性的对象,修改后返回。sources:源对象-包含您要应用的属性的对象。返回值:修改后的目标对象。示例:consttarget={a:1,b:2};const来源={b:4,c:5};constreturnedTarget=Object.assign(target,source);console.log(target);//预期输出:Object{a:1,b:4,c:5}console.log(returnedTarget);//预期输出:Object{a:1,b:4,c:5}注意:如果源对象中的属性具有相同的键,则目标对象中的属性将被源对象中的属性覆盖。较新来源的属性会覆盖较早来源的属性。3.Object.entries()Object.entries()方法返回给定对象自身的可枚举字符串键属性的[key,value]对数组。它类似于使用for...in循环进行迭代,除了for...in循环还会枚举原型链中的属性。属性的顺序与通过手动循环遍历对象的属性值给出的顺序相同。语法:Object.entries(obj)参数:obj:要返回其自身的可枚举字符串键属性[key,value]对的对象。返回值:给定对象自身的可枚举字符串键属性的[key,value]对数组。示例:constobject1={name:"David",age:23};for(const[key,value]ofObject.entries(object1)){console.log(${key}:${value});}//"name:David"//"age:23"4.对象.values()Object.values()方法返回给定对象自身的可枚举属性值的数组,其顺序与for...in循环中相同的顺序提供。语法:Object.values(obj)参数:obj:要返回其可枚举自身属性值的对象。返回值:包含给定对象自身可枚举属性值的数组。示例:constobject1={a:'somestring',b:42,c:false};console.log(Object.values(object1));//预期输出:Array["somestring",42,false]5、Object.prototype.hasOwnProperty()hasOwnProperty()方法返回一个布尔值,表示对象是否有指定的财产作为自己的财产。如果指定的属性是对象的直接属性,则该方法返回true—即使值为null或未定义。如果属性是继承的或根本没有声明,则返回false。语法:hasOwnProperty(prop)参数prop:要测试的属性的字符串名称或符号。返回值:如果对象将指定的属性作为自己的属性,则为真;否则,假的。例子:constobject1={};object1.property1=42;console.log(object1.hasOwnProperty('property1'));//预期输出:trueconsole.log(object1.hasOwnProperty('toString'));//预期输出:falseconsole.log(object1.hasOwnProperty('hasOwnProperty'));//预期输出:false6,Object.keys()Object.keys()方法用于返回给定对象自身可枚举属性名称的数组,迭代顺序与普通循环相同。语法:Object.keys(obj)参数:obj:要返回的对象,可以枚举自身的属性。返回值:表示给定对象的所有可枚举属性的字符串数组。示例:constobject1={a:'somestring',b:42,c:false};console.log(Object.keys(object1));//预期输出:Array["a","b","c"]7.Object.prototype.toString()toString()方法返回表示对象的字符串。当对象要表示为文字值或以需要字符串id的方式引用时,将自动调用此方法。默认情况下,toString()方法由每个继承自Object的对象继承。语法:toString()返回值:表示对象的字符串。示例:functionDog(name){this.name=name;}constdog1=newDog('Gabby');Dog.prototype.toString=functiondogToString(){return${this.name};};console.log(dog1.toString());//预期输出:"Gabby"注意:对于Numbers和BigInts,toString()有一个可选参数radix,其值必须最小为2,最大为36。8、Object.freeze()Object.freeze()方法冻结一个对象,这意味着它不能再被改变。冻结对象可以防止向其添加新属性、删除现有属性、更改现有属性的可枚举性、可配置性或可写性,以及更改现有属性的值。它还可以防止其原型被更改。语法:Object.freeze(obj)参数:obj:要冻结的对象。返回值:传递给函数的对象。示例:constobj={prop:42};Object.freeze(obj);obj.prop=33;//在严格模式下抛出错误console.log(obj.prop);//预期输出:42