javascript回文和类名的检测方法
回文**
//"123"变为"123321"
//"abc321"变为"abcd321123cba"
function fn(str){
//先把字符串转换为字符串数组(有无空格)
var arr=str.split(' ');
console.log(arr);
//把字符串数组颠倒顺序
var reverseArr=arr.reverse( );
console.log(reverseArr);
//把颠倒顺序的数组拼接成字符串(有无空格)
var reverseStr=reverseArr.join(" ");
console.log(reverseStr);
//把原字符串和颠倒后的字符串拼接到一起,得到结果
return str+reverseStr;
//简写
//returen str+str.split(" ").reverse.join(" ");
}
console.log(fn("this is an apple"));
console.log(fn("abc321"));
检测类名
function checkClass(a,b) {
//获取类名数组
var allClass = a.split(' ');
console.log(allClass);
//判断b的值是否在数组出现过
//假如没有出现过(有:true,没有:false)
var i=0;
var result=false;
for(;i<allClass.length;i++){
if(allClass[i]===b){
//如果这两个值相等就代表数组的某一项的值和b相等,此时之前的假设是错误的
result=true;
break;
}
}
return result;
}
indexOf方法,如果没有找到就返回-1,如果找到了,就返回这项在数组的角标
if (allClass.indexOf(b) === -1) {
return false;
} else {
return true;
}
}
console.log(checkClass("name right","right"));
console.log(checkClass("name right","left"));
var obj1 = {
a: 10,
b: 20
};
var obj2 = obj1;
obj1.a = 30;
console.log(obj2.a);
console.log(obj1.a);
// 引用类型:把引用类型的数据赋值给变量的时候,并不会把数据本身赋值给变量,而是把这个数据的引用赋值给变量
var arr = [1, 2, 3];
var arr2 = arr;
arr[1] = 10;
console.log(arr2);