trim()、Object.keys()、Object.defineProperty()


一、字符串方法


1、trim()

去除字符串的左右空格并返回一个新字符串

var str='  你好啊!  ';			//左右各两个空格
console.log(str.length);
console.log(str.trim().length);

在这里插入图片描述


二、对象方法



1、Object.keys()


返回一个对象的属性名的数组

var o={
    uname:'李明',
    age:20,
    gender:'male',
    grade:80
};
console.log(Object.keys(o));

在这里插入图片描述

2、Object.defineProperty(obj,prop,descriptor)

该方法是给对象添加新属性或者修改原来的属性
obj------需要操作的对象
prop------需要操作的属性
descriptor------需要操作的属性的值,需要以对象的形式{}书写,里面有一些值

value:属性的值,默认为undefined
writable:值是否重写,true|false 默认是false
enumerable:目标属性是否可以被枚举,true|false 默认是false
configurable:目标属性里的特性(value、writable、enumerable、configurable)是否可以被修改,true|false 默认是false

上面的这些默认值是针对使用该方法新创建的属性,对哪些原来就有的属性以上的默认值都是true,下面的这些可以更好的理解。

var o={
    uname:'李明',
    age:20,
    gender:'male',
    grade:80
};
Object.defineProperty(o,'age',{		//修改原来的属性
    value:30
});
o.age=50;				//下图的第二行的值由30被改为50
Object.defineProperty(o,'job',{		//创建新的属性
    value:'student'			//而且下图的第一行并没有遍历出job这属性
});
o.job='computer';			//下图的第二行的job并没有被修改
delete  o.job;				//而且也没有被删除
console.log(Object.keys(o));
console.log(o);

在这里插入图片描述
可知***上面的这些默认值是针对使用该方法新创建的属性,对哪些原来就有的属性以上的默认值都是true而不是false***

发布了24 篇原创文章 · 获赞 0 · 访问量 254

猜你喜欢

转载自blog.csdn.net/weixin_45969777/article/details/104873289