一. 截取数组中的值
1.substr
<script>
var str ="helloworld";
// substr(index,length)
console.log(str.substr(1,3));
</script>
1-1. 文字省略
<script>
// var str ="时间有限来不及去惦记心里没有我的人";
// console.log(str.length);
// if(str.length>6){
// var res = str.slice(0,6)+"...";
// console.log(res)
// }
var arr =[
"时间有限来",
"不及去惦记心里",
"心里没有我的人"
]
var res=[];
arr.forEach(item=>{
if(item.length>3){
item = item.substr(0,3)+"...";
}
res.push(item);
})
console.log(res)
</script>
<script>
var arr =[
"时间有限来",
"不及去惦记心里",
"心里没有我的人"
]
var res =arr.map(item=>{
if(item.length>3){
item = item.substr(0,3)+"..."
}
return item
});
console.log(res);
</script>
1-2. 选出含有关键字的值,
<body>
<input type="text" id="app">
<script>
var arr =[
"时间有限来",
"不及去惦记心里",
"心里没有我的人"
]
$("#app").keyup(function(event){
if(event.keyCode==13){
var value =$(this).val();
var res = arr.filter(item=>{
return item.includes(value)
})
//字数超过三个字的省略
var lists= res.map(item=>{
if(item.length>3){
item=item.substr(0,3)+"..."
}
return item;
})
console.log(lists)
}
})
</script>
</body>
2. substring
<script>
var str ="hello";
// substring[startIndex,endIndex)
// 包含开始下标,不包含结束下标
var res = str.substring(1,4);
console.log(res)
</script>
3.charAt
得到字符串中某个字符的下标
<script>
var str ="hello";
console.log(str.charAt(1)) //"e "
</script>
二.查看是否包含关键字
1.indexOf(参数)
可以查询字符串中某字符的下标
2.search(startIndex,endIndex)
可以查询字符串中某字符的下标
3.includes
字符串中是否包含某字符
4.match
返回的是一个数值,将匹配的字符返回一个数组
<script>
var str ="hello";
console.log(str.indexOf("o")) //"4"
</script>
<script>
var str = "helloworld";
var res = str.search("r");
console.log(res)
console.log(str.search("a"))
</script>
<script>
//match返回的是一个数组,将匹配的字符返回一个数组
//存在返回数组//不存在返回null
var str ="你好你来你的";
var res=str .match("你");
console.log(res)
console.log(str.match("他"))
</script>
三. 替换
1.replace(condition,value)
<script>
// replace(condition,value)
var str ="你好";
console.log(str.replace("你","他"))
var s ="hello";
console.log(s.replace("l","*"))
</script>
四. 分割
1. split
****
<script>
var str ="hello";
console.log(str.split());
console.log(str.split(""))
console.log(str.split("e"))
</script>
****将"hello"--->"olleh"
<script>
var res="hello";
var arr =res.split("");
console.log((arr.reverse()).join(""))
</script>
****
<script>
var str ="?key=你&age=18";
var res =str.slice(1);
var list =res.split("&")
console.log(list)
var key =list[0];
var age =list[1];
key = key.split("=")[1];
age = age .split("=")[1];
var obj ={
key,
age
}
console.log(obj)
</script>
*****
<script>
// 1.order=hot&cat=你&limit=35&offset=140
// 2.['order=hot', 'cat=你', 'limit=35', 'offset=140']
var url ="https://music.163.com/#/discover/playlist/?order=hot&cat=你&limit=35&offset=140"
var res = url.split("?")[1].split("&");
console.log(res)
var obj={};
// 3.需要让数组中每一项中第一项为key,第二项为value
res.forEach(item=>{
// console.log(item)
var list = item.split("=");
// console.log(list)
obj[list[0]]=list[1];
})
console.log(obj)
</script>
五. Object[获取属性及属性值]
<script>
/*
Object.keys()可以获取对象所有的属性
Object.values()可以获取对象所有属性的值
*/
var obj ={
name:"李四",
age:39
}
var keys = Object.keys(obj)
var values = Object.values(obj)
console.log(keys)
console.log(values)
</script>
1. 过滤相同值
<script>
var arr ={
A:[{city:"武汉"},{city:"广州"}],
B:[{city:"深圳"},{city:"广州"}],
C:[{city:"上海"},{city:"武汉"}]
}
var values = Object.values(arr);
values.forEach(item=>{
console.log(item)
item.forEach(city=>{
console.log(city)
})
})
</script>