各位大神,幫忙看看哪里錯了,我是照著左邊提醒那里打的。謝謝!
各位大神,幫忙看看哪里錯了,我是照著左邊提醒那里打的。謝謝!
還有求解這里是什么意思?
? ? ? ? ? ? ? ? if(countMap1[i]){
? ? ? ? ? ? ? ? ? ? countMap1[i]++;
? ? ? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? ? ? countMap1[i]=1;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? if(countMap2[i]){
? ? ? ? ? ? ? ? ? ? countMap2[i]++;
? ? ? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? ? ? countMap2[i]=1;
我不理解這里的if括號里面的是什么意思,還請各位大神解惑。十分感謝??!代碼如下:
<!DOCTYPE HTML>
<html>
<head>
? ? <meta http-equiv="Content-Type" content="text/html; charset=gb18030">
? ? <title>Untitled Document</title>
? ??
</head>
<body>
? ? <script type="text/javascript"> ??
? ? ? ? /*
? ? ? ? ?* param1 Array?
? ? ? ? ?* param2 Array
? ? ? ? ?* return true or false
? ? ? ? ?*/
? ? ? ? function arraysSimilar(arr1, arr2){
? ? ? ? ? ? if(!(arr1 instanceof Array)
? ? ? ? ? ? ? ?|| !(arr2 instanceof Array)){
? ? ? ? ? ? ? ? return false;
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? if(arr1.length!==arr2.length){
? ? ? ? ? ? ? ? return false;
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? var i = 0,
? ? ? ? ? ? ? ? n = arr1.length,
? ? ? ? ? ? ? ? countMap1 = {},
? ? ? ? ? ? ? ? countMap2 = {},
? ? ? ? ? ? ? ? t1, t2,
? ? ? ? ? ? ? ? TYPES = ['string', 'boolean', 'number', 'undefined', 'null', 'function', 'date', 'window'];
? ? ? ? ? ? ? ??
? ? ? ? ? ? for(; i < n ; i++){
? ? ? ? ? ? ? ? t1 = typeOf(arr1[i]);
? ? ? ? ? ? ? ? t2 = typeOf(arr2[i]);
? ? ? ? ? ? ? ? if(countMap1[i]){
? ? ? ? ? ? ? ? ? ? countMap1[i]++;
? ? ? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? ? ? countMap1[i]=1;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? if(countMap2[i]){
? ? ? ? ? ? ? ? ? ? countMap2[i]++;
? ? ? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? ? ? countMap2[i]=1;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? function typeOf(ele){
? ? ? ? ? ? ? ? var r;
? ? ? ? ? ? ? ? if(ele === null){
? ? ? ? ? ? ? ? ? ? r = 'null';
? ? ? ? ? ? ? ? }else if(ele instanceof Array){
? ? ? ? ? ? ? ? ? ? r = 'array';
? ? ? ? ? ? ? ? }else if(ele === window){
? ? ? ? ? ? ? ? ? ? r = 'window';
? ? ? ? ? ? ? ? }else if(ele instanceof Date){
? ? ? ? ? ? ? ? ? ? r = 'date'
? ? ? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? ? ? r = typeof ele;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? return r;
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? for(i = 0 , n = TYPES.length; i < n; i++){
? ? ? ? ? ? ? ?if(countMap1[TYPES[i]]?
? ? ? ? ? ? ? ? ? !== countMap2[TYPES[i]]){
? ? ? ? ? ? ? ? ? ?return false;
? ? ? ? ? ? ? ?}?
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? return true;
? ? ? ? }
? ? </script>
? ? <script src="testData.js"></script>
</body>
</html>
2015-06-23
感覺這個應該改成,你可以試試
我沒驗證,這個方法不是我用的,理解有點復雜,所以只是想到了他的思路,就是統(tǒng)計每個類型的數(shù)目,最后比較統(tǒng)計結果是不是一樣的。大致思路就是這個,改動的部分呢,就是對象的key value進行運算,存在就+1,不存在就賦值1.