一、js字符串
1、charAt():返回一个由给定索引处的单个 UTF-16 码元构成的新字符
let str = '大宋少年志2'
console.log(str.charAt(1)); //宋
console.log(str.charAt(-1)); // [空]
2、charCodeAt():返回一个整数,表示给定索引处的 UTF-16 码元,其值介于 0
和 65535
之间
let str = '大宋少年志2'
console.log(str.charCodeAt(1)); //23435
3、concat():拼接字符串
let str = '大宋少年志2'
let str2 = "大爆啦!"
console.log(str.concat(str2)); //大宋少年志2大爆啦!
4、slice():切割字符串
let str3 = "1234567890"
console.log(str3.slice(0, 4) + "***" + str3.slice(-4)); //1234***7890
5、split():分割字符串
let str3 = 1234567890
str3 = String(str3)
const strarr = str3.split("")
console.log(strarr); // ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0']
6、includes():执行区分大小写的搜索,以确定是否可以在一个字符串中找到另一个字符串,并返回布尔值
let str = '大宋少年志2'
console.log(str.includes("宋")); //true
7、startsWith()/endsWith():判断一个字符串是否以指定字符串开头/结尾,返回布尔值
let str = '大宋少年志2'
console.log(str.startsWith("大")); //true
//---------------------------------
console.log(str.endsWith(2)); //true
console.log(str.endsWith("志")); //false
8、indexOf()/lastIndexOf():在字符串中搜索指定子字符串,并返回其第一次/最后一次出现的位置索引
search():返回正则表达式在字符串中首次匹配的索引;否则,返回 -1
indexOf(searchString)
indexOf(searchString, position)
let str = '大宋少年志2'
console.log(str.indexOf("少")); //2
console.log(str.indexOf("少", 3)); //-1
//---------------------------------------
console.log(str.search("少")); //2
9、match():检索字符串与正则表达式进行匹配的结果
/g:全局匹配
let str = '大宋少年志2'
console.log(str.match(/[2]/)); //['2', index: 5, input: '大宋少年志2', groups: undefined]
console.log(str.match(/2/g)); //['2']
console.log(str.match(/大|2/)); //['大', index: 0, input: '大宋少年志2', groups: undefined]
10、repeat(count):重复count次字符串
let str = '大宋少年志2'
console.log(str.repeat(2)); //大宋少年志2大宋少年志2
11、replace(pattern, replacement):返回一个新字符串,其中一个、多个或所有匹配的 pattern
被替换为 replacement
let str2 = "111222"
console.log(str2.replace(/2/, 3)); //111322
console.log(str2.replace(/2/g, 3)); //111333
12、substring(indexStart, indexEnd):回该字符串从起始索引到结束索引(不包括)的部分
let str = '大宋少年志2'
console.log(str.substring(2, 4)); //少年
13、toLowerCase()/toUpperCase():将该字符串转换为小写/大写形式
let str2 = 'DUGIUW'
console.log(str2.toLowerCase()); //dugiuw
let str2 = 'dugiuw'
console.log(str2.toUpperCase()); //DUGIUW
14、trim():从字符串的两端移除空白字符,并返回一个新的字符串,而不会修改原始字符串
trimStart()/trimEnd():移除开头/结尾空白字符
let str = ' 大宋少年志2 '
console.log(str.trim()); //大宋少年志2
15、valueOf():返回String对象的字符串值
let str = '大宋少年志2'
console.log(str.valueOf()); //大宋少年志2
二、toFixed():使用定点表示法来格式化一个数值
let num = 123456.567;
console.log(num.toFixed()); //123457 四舍六入
console.log(num.toFixed(2)); //123456.57
三、解构: 把取值的变量解构出来 更方便
let obj = {
a: 1,
b: 2,
c: 3,
};
console.log(obj.a, obj.b);
const { a, b, c } = obj;
console.log(a, b, c);
// 数组的解构
let arr = [4, 5, 6];
console.log(arr[0], arr[1]);
const [d, e, f] = arr;
console.log(d, e, f);
四、展开运算符:把对象展开
let arr = [1, 2, 3];
let arr1 = [4, 5, 6];
let arr2 = arr.concat(arr1);
let arr3 = [...arr, ...arr1];
console.log(arr2); //[1,2,3,4,5,6]
console.log(arr3); //[1,2,3,4,5,6]
let obj = {
a: 1,
};
let obj2 = {
b: 2,
};
let obj3 = { ...obj, ...obj2 };
console.log(obj3); //{a:1,b:2}
let arr = [
{
name: "数学",
score: 99,
},
{
name: "英语",
score: 97,
},
{
name: "语文",
score: 96,
},
{
name: "历史",
score: 50,
},
{
name: "地理",
score: 36,
},
];
console.log(arr.map((item, index) => ({ ...item, ids: index })));
/**0: {name: '数学', score: 99, ids: 0}
1: {name: '英语', score: 97, ids: 1}
2: {name: '语文', score: 96, ids: 2}
3: {name: '历史', score: 50, ids: 3}
4: {name: '地理', score: 36, ids: 4}*/
五、seTtimeout(()=>{},时间(毫秒)):延时器
const fn = () => {
console.log(1)
}
setTimeout(() => {
fn()
}, 3000)
六、setInterval(()=>{},时间(毫秒)):定时器
const fn = () => {
console.log(1)
}
setInterval(() => {
fn()
}, 1000)
清除定时任务
const fn = () => {
console.log(1)
}
const dsq = setInterval(() => {
fn()
}, 1000)
setTimeout(() => {
clearInterval(dsq)
}, 3000)
七、new
let obj = { a: 1 }
console.log(obj); //{a: 1}
let obj1 = new Object({ a: 1 })
obj1.b = 2
console.log(obj1); //{a: 1, b: 2}
八、this
console.log(this); //Window {window: Window, self: Window, document: document, name: '', location: Location, …}
let obj = {
fn1: () => {
console.log(this)
}
}
console.log(obj.fn1);
/**() => {
console.log(this)
}*/
九、for...in/for...of:循环遍历对象
let obj = {
name: '张三',
age: 18,
speak: '尊嘟假嘟?'
}
console.log(obj.name); //张三
console.log(obj['name']); //张三
for (const key in obj) {
console.log(key + ":" + obj[key]); //name 张三 name:张三 age: 18 speak: 尊嘟假嘟?
}
let arr = ['1', '8', { name: "张三", age: 18 }]
for (const key in arr) {
console.log(key + ":" + arr[key]); //0:1 1:8 2:[object Object]
}
for (const item of arr) {
console.log(item) //1 8 {name: '张三', age: 18}
}
十、typeof():判断类型
console.log(typeof 1); // number
console.log(typeof "张三"); //string
console.log(typeof []); // object
console.log(typeof {}); // object
console.log(typeof undefined); // undefined
console.log(typeof null); // object
const fn = () => {};
console.log(typeof fn); // function