一些面试题4
发布时间:2024年01月17日
- 请使用静态方法给对象添加一个新属性,可修改,不可删除,可循环
Let a = {};
Object.defineProperty(a, ‘num’, {
Value:”1”,
Writable:true,
Configurable:false,
Enumerable:”true”
})
// writable设置是否能修改,修改true,否则false
// configurable:该属性不可被删除,删除true,否则false
// enumerable是否可以被枚举(循环),拿取循环值true,否则false - 循环对象的方法有哪些?
- for 2.For…in 3.while 4.do…while 5.forEach
- map 7.filter 8.Object.keys() 9.Object.values()
10.Object.getOwnPropertyNames() 11.Object.getOwnPropertySymbols() - js数据类型有哪些,判断数据类型的方法有哪些
Number String Object Boolean undefined function bigInt Symbol
typeof运算符
空 undefined null - ES6新增操作字符串的方法有哪些
includes():返回布尔值,判断是否找到参数字符串。(重点)
// startsWith():返回布尔值,判断参数字符串是否在原字符串的头部。
// endsWith():返回布尔值,判断参数字符串是否在原字符串的尾部。
repeat(number):返回新的字符串,表示将字符串重复指定次数返回。
padStart(总长度,“填充的字符串”):返回新的字符串,表示用参数字符串从头部(左侧)补全原字符串。
// padEnd(总长度,“填充的字符串”):返回新的字符串,表示用参数字符串从尾部(右侧)补全原字符串。
模板字符串相当于加强版的字符串,用反引号 `,除了作为普通字符串,还可以用来定义多行字符串,还可以在字符串中加入变量和表达式。带值${a} - ES5中操作数组的方法有哪些
concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,仅会返回被连接数组的一个副本。
join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,默认使用’,'号分割,不改变原数组。
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。末尾添加,返回的是长度,会改变原数组。
pop() 方法用于删除并返回数组的最后一个元素。返回最后一个元素,会改变原数组。
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。返回第一个元素,改变原数组。
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。返回新长度,改变原数组
slice()返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。返回选定的元素,该方法不会修改原数组
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。splice() 方法会直接对数组进行修改。
sort 排序
按照 Unicode code 位置排序,默认升序
reverse() 方法用于颠倒数组中元素的顺序。返回的是颠倒后的数组,会改变原数组
都接受两个参数:查找的值、查找起始位置
不存在,返回 -1 ;存在,返回位置。indexOf 是从前往后查找, lastIndexOf 是从后往前查找。
6.请写出水平居中的所有方法,请写出垂直居中所有方法
水平居中
行内元素: text-align: center
块级元素: margin: 0 auto
position:absolute +left:50%+ transform:translateX(-50%)
display:flex + justify-content: center
垂直居中
设置line-height 等于height
position:absolute +top:50%+ transform:translateY(-50%)
display:flex + align-items: center
display:table+display:table-cell + vertical-align: middle;
文章来源:https://blog.csdn.net/qq_66996090/article/details/135586217
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!