JavaScriptES5新方法(1),看完直接怼产品经理,一个小例子彻底搞懂前端的MVP模式到底是什么

本文介绍了JavaScript中trim()方法用于去除字符串两端空白字符的用法,以及Object.keys()获取对象属性名和Object.defineProperty()定义/修改属性的特性。文章还提及了前端开发中面试准备的重要性,分享了前端学习资源和持续进阶的建议。
摘要由CSDN通过智能技术生成

trim() 方法会从一个字符串的两端删除空白字符。trim() 方法并不影响原字符串本身,它返回的是一个新的字符串。

语法:

str.trim()

例如:现在有一个字符串,想要去掉其两端的空白字符,操作如下:

var str = ’ wh ';

console.log(str);

var str1 = str.trim();

console.log(str1);

打印结果为:

在这里插入图片描述

三、对象方法

=====================================================================

1、Object.keys()


Object.keys()用于获取对象自身所有的属性。效果类似 for…in,返回一个由属性名组成的数组。

语法:

Object.keys(obj)

例如现在有一个对象,我们想要获取它里面的属性名,我们就可以这么操作:

var obj = {

id: 1,

name: ‘王欢’,

sex:‘女’,

age: 18

}

console.log(obj);

var obj1 = Object.keys(obj);

console.log(obj1);

打印的结果为:

在这里插入图片描述

如果我们想使用上面得到的数组obj1中的内容,就可以通过forEach来遍历获取。

代码为:

obj1.forEach(function(value){

console.log(value);

})

打印的结果为:

在这里插入图片描述

2、Object.defineProperty()


Object.defineProperty()定义对象中新属性或修改原有的属性。

语法:

Object.defineProperty(obj, prop, descriptor)

  • obj:必需。目标对象

  • prop:必需。需定义或修改的属性的名字

  • descriptor:必需。目标属性所拥有的特性

这里我们需要注意的是:descriptor这个值有几个限定,首先它必须以对象的形式写入。

其次,它可以写的值有:

| 值 | 意义 |

| — | — |

| value | 设置属性的值 默认为undefined |

| writeable | 值是否可以重写。true /false 默认为false |

| enumberable | 目标属性是否可以被枚举。true /false 默认为 false |

| configurable | 目标属性是否可以被删除或是否可以再次修改特性 true / false 默认为false |

例如:

当我们要修改上例中的对象的name属性时,我们可以操作为:

var obj = {

id: 1,

name: ‘王欢’,

sex:‘女’,

age: 18

}

console.log(obj);

Object.defineProperty(obj,‘name’,{

value:‘小熊’

})

console.log(obj);

打印结果为:

在这里插入图片描述

如果我们要将sex属性设置为不可修改时,可以操作为:

Object.defineProperty(obj,‘sex’,{

writable:false

})

obj.sex = ‘男’

console.log(obj);

当我们修改属性后,在打印这个对象,得到的结果为:

在这里插入图片描述

当我们将sex设置为:writable:true,在打印试试:

在这里插入图片描述修改成功。

如果我们想要让上述中的age在遍历的时候被隐藏掉2,我们可以做如下操作:

Object.defineProperty(obj,‘age’,{

enumerable:false

})

console.log(Object.keys(obj));

打印的结果为:

在这里插入图片描述

可以看到age这个属性遍历时并不会显示。

需要注意的是,通过Object.defineProperty()添加的属性,其enumerable值也默认为false,所以在遍历的时候也不显示,如果想要显示,直接将其手动改为true.

如果我们不想删除某个属性,并且禁止其被删除,应该怎么操作呢,这里就要要用到configurable这个值。

以上述为例,如果不允许id属性被删除,应该操作为:

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
img

总结

面试前要精心做好准备,简历上写的知识点和原理都需要准备好,项目上多想想难点和亮点,这是面试时能和别人不一样的地方。

还有就是表现出自己的谦虚好学,以及对于未来持续进阶的规划,企业招人更偏爱稳定的人。

万事开头难,但是程序员这一条路坚持几年后发展空间还是非常大的,一切重在坚持。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

前端面试题汇总

JavaScript

前端资料汇总

后发展空间还是非常大的,一切重在坚持。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

前端面试题汇总

JavaScript

前端资料汇总

  • 17
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值