热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javascript里,定义了变量i,那么ii的值怎么获取到的?

是看了这段代码提出的疑问。functiondoz(h,sj){varkk,hh;kkh.split();hhh.split().reverse();mmdo
是看了这段代码提出的疑问。

function doz(h,sj)
{   
var kk,hh;
kk=h.split("");
hh=h.split("").reverse();
mm=document.getElementById("p"+h).innerHTML.split(" - ");
var m = new Array();
for(i=0;i {
if(in_array(i,kk)==1)
{
m[hh[ii]]=mm[i];
}
else
{
m[i]=mm[i];
}
}
document.getElementById(sj).innerHTML=m.join(" - ");
}



这段代码取自http://www.8684.cn/js/m.js
引用页面如:http://beijing.8684.cn/x_0265ef34

自己调试了,没搞明白ii和i之间有什么对应关系!
请大家帮忙看下,怎么理解?

10 个解决方案

#1


没定义过ii啊

#2


引用 1 楼 varlj 的回复:
没定义过ii啊


没找到!
可以用firebug调试http://beijing.8684.cn/x_0265ef34这个页面,
可以看到ii每次循环时的值都不一样,所以感到很奇怪。

#3


ii是哪里定义的?
全局??...
函数里面定义全局变量?

#4


看了那个网站的代码,
我都有点不敢相信自己的眼睛,
不得不佩服这个网站的作者.
我猜想这位高人一定在修练怎样才能写出世界上最乱最难懂代码.
原文代码截取如下

function in_array(i,kk)
{
for(ii=0;ii {
if(i==kk[ii])
{
return 1;
}
}
}

function doz(h,sj)
{   
var kk,hh;
kk=h.split("");
hh=h.split("").reverse();
mm=document.getElementById("p"+h).innerHTML.split(" - ");
var m = new Array();
for(i=0;i {
if(in_array(i,kk)==1)
{
m[hh[ii]]=mm[i];
}
else
{
m[i]=mm[i];
}
}
document.getElementById(sj).innerHTML=m.join(" - ");
}

这里ii在in_array中被使用,
由于未被声明过,因此被作为全局的变量来处理了.
运行过in_array之后,ii等于数组kk.length.

汗!!!!!

#5


ii是什么呢?

没有看到啊/

#6


引用 4 楼 syukugai 的回复:
看了那个网站的代码, 
我都有点不敢相信自己的眼睛, 
不得不佩服这个网站的作者. 
我猜想这位高人一定在修练怎样才能写出世界上最乱最难懂代码. 
原文代码截取如下 

这里ii在in_array中被使用, 
由于未被声明过,因此被作为全局的变量来处理了. 
运行过in_array之后,ii等于数组kk.length. 

汗!!!!! 


不对吧,如果是这样的话,应该是固定值吧!即kk.length,
但是我调试过程中,到m[hh[ii]]=mm[i]时,ii还出现过0呢,之前执行过in_array的

#7


我有点明白了,的确如syukugai所说,ii是作为一个全局变量了。
不过他并不总是等于kk.length的,在运行过in_array时,当找到所要的结果是,就返回-1,自增到当前值结束,否则自增至kk.length。
8684的网站的作者的确是高手,也是可以理解的,应该是被逼出来的,很多其他网站或个人人都想盗用它的数据,所以他就不得不断的反盗,于是就练就了今天的本领。

#8


HOHO.
如七楼所说,
运行时根据找到的结果值不同.
刚才没有细看.

#9


7楼正解

#10


结贴了

推荐阅读
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
  • php设置数组大小_【大厂必备】2020超经典PHP面试题
    结合我自己这段时间的面试情况,面对的一些php面试题列举出来,基本上结合自己的看法回答的,不妥的地方请大家指出去,与大家一起 ... [详细]
  • JSCoverage-->JavaScript测试覆盖率检测工具(转),Go语言社区,Golang程序员人脉社 ... [详细]
  • 凡客诚品官方网站的前端改进建议
    打开http:www.vancl.com发现采用的Asp.net,这点我感到很欣慰,毕竟国内采用.net技术体系的优秀网站少之又少。好奇之余右键-查看源 ... [详细]
  • 高仿CSDN社区树形图 .
    一直感觉CSDN社区的树形结构特别的人性化,直观化。最近做系统的时候需要用到这个树形结构,于是模仿CSDN的树形结构做了一个自己的树形结构, ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 有个事情移植想不明白
    后端开发|php教程不明白,移植,事情后端开发-php教程为什么我客户端通过http请求服务端服务端发张图片到客户端这个传输为什么那么慢一共也就300多kb但一共传了5秒多如果直接 ... [详细]
  • JavaScript与DOM(上)——也适用于新手 – 深入理解JavaScript系列 23
    本文是《JavaScript深度解析》系列文章第23篇(共51篇)文档对象模 ... [详细]
author-avatar
2013丶峰峰最逆天_192
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有