使⽤JS!封装includes函数(超详细!)
在ES6中,我们JS做出了很⼤的改变,其中有⼀个函数是includes,可以⽤来判断字符串或者数组中是否包含所对应的内容,在ES5之前有⼀个⽅法是indexOf不过这个⽅法返回值是索引号如果没有到则返回-1,这样使得我们很⿇烦,在ES6进⾏了整改,出现了
includes函数
废话不多说,看看indexOf和includes的区别!
问题:定义了⼀个变量 str 值为 ‘abcabczx’ 我们需要把⾥⾯重复的去掉放到⼀个新的变量中,你该如何做?
// 第⼀种⽅法使⽤ indexOf
var str ='abcabczx';
var newStr ='';
for(var i =0; i < str.length; i++){
if(newStr.indexOf(str[i])==-1){
newStr += str[i];
}
}
console.log(newStr)
// 第⼆种⽅式使⽤ includes
var str ='abcabczx';
var newStr ='';
for(var i =0; i < str.length; i++){
if(!newStr.includes(str[i])){
newStr += str[i];
}
}
console.log(newStr);
当我们使⽤includes是不是更加的直观了呢?
includes是直接返回的布尔值,能在我们进⾏做判断的时候更加的有利,更加的简便。
var arr =['zx','cjsm'];
// 使⽤arr这个数组进⾏判断 arr⾥⾯是否有'cjsm'这⼀个元素呢?
// 如果有则返回 true 没有则返回 false
if(arr.includes('cjsm')){
console.log('张希和成吉思⽶');
}else{
console.log('张三');
}
接下来我们进⾏⾃⼰封装⼀个includes⽅法
让⾃⼰更加的理解这个函数,更加深刻。
var arr =['abc','ccc'];
function_includes(look, bylook){
for(var item of look){
// 当只有⼀条执⾏语句可以省略 {}
if(item == bylook)return true;
}
return false;
indexof的用法javascript
}
console.log(_includes(arr,'abc'));// 返回true
制作不易,点个赞⾛也来不迟,谢谢⼤家。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论