常用的JavaScript设计模式
-
单体模式
-
工厂模式
-
例模式
函数
-
函数的定义
-
局部变量和全局变量
-
返回值
-
匿名函数
-
自运行函数
-
闭包
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
let person = {
name: ‘Nicholas’,
age: 29,
}
//遍历输出
for (var key in person) {
console.log(person[key])
}
//结果为Nicholas 29
| 属性 | 含义 |
| :-: | :-- |
| Configurable | 是否可以通过delete删除并重新定义 |
| Enumberable | 是否可以通过for-in循环返回 |
| Writable | 属性的值是否可以被修改 |
| Value | 属性实际的值 |
要修改这些属性默认值true, 使用Object.defineProperty()方法,这个方法接受三个参数:给其添加属性的对象,属性的名称,一个描述对象
示例代码
let person = {
name: ‘Nicholas’,
age: 29,
}
Object.defineProperty(person, ‘name’, {
writable: true,
})
console.log(person.name)
//结果Nicholas
person.name = ‘newNicholas’;
console.log(person.name)
// writable: true结果Nicholas
// writable: false结果newNicholas
========================================================================
-
var str =new string(‘hello’)
-
var str=‘hello’
| 属性 | 含义 |
| :-: | :-- |
| str[] | 访问字符串中字符 |
| charAt() | 找到索引号内容并返回 |
| indexof() | 找到字符串索引号 |
| lastIndexof() | 从后面找到字符串索引号 |
| substring() | 2个值,从哪个开始,到哪个结束,不包括结束字符 |
| substr() | 2个值,从哪开始,截取几个 |
| slice() | 2个值,从哪个开始,到哪个结束,不包括结束字符 |
| replace() | 用新字符串替换指定字符串 |
| split() | 分隔字符串,返回一个数组 |
| concat() | 字符串拼接 |
| trim() | 去除前后空格符 |
| startsWith(a) | 是否以a字符开头 |
| endWith(a) | 是否以a字符结尾 |
| includes(a) | a在全字符串是否存在 |
| toLowerCase | 转换小写 |
| toUpperCase | 转换大写 |
| repeat(N) | 将字符串复制N次 |
| padStart(n,‘m’) | 将m复制n次填充到字符串前面 |
| padEnd(n,‘m’) | 将m复制n次填充到字符串后面 |
注:
-
字符串中空格也是一个字符串
-
indexof()找不到时返回-1
-
slice,substring,substr
-
是以相同形式被调用,当只有一个数,提取到末尾位置
-
当有负数时,slice将所有负值当成字符串长度加上负参数值,substr将第一个负参数值当成字符串长度加上负参数值,第二个转换为0,substring将所有转换为0
示例代码
var str=‘hello’;
console.log(str[0])
//结果h
var str=‘hello’;
console.log(str.charAt(0))
//结果h
var str=‘hello’;
console.log(str.indexOf(‘l’))
//结果02
var str=‘hello’;
console.log(str.lastIndexOf(‘l’))
//结果03
var str=‘hello’;
console.log(str.substring(0,2))
//结果he
var str=‘hello’;
console.log(str.substr(0,2))
//结果he
var str=‘hello’;
console.log(str.replace(‘he’,‘eh’))
//结果ehllo
var str=‘hello’;
newStr=str.split(‘’)
console.log(newStr)
//结果[‘h’, ‘e’, ‘l’, ‘l’, ‘o’]
var str=‘hello’;
前端面试题汇总
JavaScript
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
性能
linux
前端资料汇总