<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>判断两个数组是否相似</title>
<style type="text/css">
</style>
</head>
<body>
<script type="text/javascript">
function arraysSimilar(arr1,arr2){
var type1=[];var type2=[];
var len1=arr1.length;
var len2=arr2.length;
//首先判定类型是不是数组,使用instanceof
if(arr1 instanceof Array && arr2 instanceof Array)
{
//判定数组长度是不是相等
if(len2!=len1){
return false;
}
//检查数组里的类型列表
//对数据类型进行比较
for(var i in arr1){
type1.push(typeof(arr1[i]));
}
for(var j in arr2){
type2.push(typeof(arr2[j]));
}
//对数组进行排序sort()然后在进行比较字符串
if(type1.sort().toString()==type2.sort().toString()){
return true;
}else{
return false;
}
}
}
</script>
<script type="text/javascript" src="testData.js"></script>
</body>
其他用法:
toString()方法可以传递一个参数,表示数值的基数。默认情况为十进制
<html>
<head>
<meta charset="utf-8">
<title>判断两个数组是否相似</title>
<style type="text/css">
</style>
</head>
<body>
<script type="text/javascript">
function arraysSimilar(arr1,arr2){
var type1=[];var type2=[];
var len1=arr1.length;
var len2=arr2.length;
//首先判定类型是不是数组,使用instanceof
if(arr1 instanceof Array && arr2 instanceof Array)
{
//判定数组长度是不是相等
if(len2!=len1){
return false;
}
//检查数组里的类型列表
//对数据类型进行比较
for(var i in arr1){
type1.push(typeof(arr1[i]));
}
for(var j in arr2){
type2.push(typeof(arr2[j]));
}
//对数组进行排序sort()然后在进行比较字符串
if(type1.sort().toString()==type2.sort().toString()){
return true;
}else{
return false;
}
}
}
</script>
<script type="text/javascript" src="testData.js"></script>
</body>
</html>
1、toString()的用法:(可用于将对象转换为字符串)
大多值都有toString()方法,null和undefined是没有的。
数组类的tostring()方法是将数组的每个元素转换成一个字符串,并在元素之间添加逗号后合成字符串。
函数类:返回这个函数的现实定义的表示方式。
日期类:返回一个可读的时间和日期字符串
RegExp:将该对象转换成正则表达式直接量的字符串
类型 | 行为描述 |
---|---|
Array | 将 Array 的每个元素转换为字符串,并将它们依次连接起来,两个元素之间用英文逗号作为分隔符进行拼接。 |
Boolean | 如果布尔值是true,则返回"true"。否则返回"false"。 |
Date | 返回日期的文本表示。 |
Error | 返回一个包含相关错误信息的字符串。 |
Function | 返回如下格式的字符串,其中 functionname 是一个函数的名称,此函数的 toString 方法被调用: "function functionname() { [native code] }" |
Number | 返回数值的字符串表示。还可返回以指定进制表示的字符串,请参考Number.toString()。 |
String | 返回 String 对象的值。 |
Object(默认) | 返回"[object ObjectName]",其中 ObjectName 是对象类型的名称。 |
2、将对象转换成数字的方法:valueof()
数组、函数、正则简单继承这个方法,返回对象本身。
日期类返回它的一个内部表示:1970年一月一日以来的毫秒数
3、instanceof 用来判定对象的具体类型,如数组等,它是基于原型链
typeof用来判定原始类型和函数对象,去看它是不是原始类型或是函数对象,返回的是字符串