代码分析 | 没学过JavaScript如何分析简单JavaScript代码

Posted 萌狼蓝天

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码分析 | 没学过JavaScript如何分析简单JavaScript代码相关的知识,希望对你有一定的参考价值。


没学过javascript,如何分析其中的代码?

前些日子有个好友找我帮忙,让我分析一下以下代码

   var loc = location.href;
   var n1 = loc.length;
   var n2 = loc.indexOf('=');
   var txt = decodeURI(loc.substr(n2+1,n1-n2));
   var box = document.getElementById('box');
   box.innerhtml = txt;

不过我还没学JavaScript ,那么怎么来解读这个代码呢?

我的想法是,借助百度,一句话一句话的“读”

以下附上我的分析过程:

(关键就是弄懂里面一些命令参数的意思与作用)


   var loc = location.href;
   var n1 = loc.length;
   var n2 = loc.indexOf('=');
   var txt = decodeURI(loc.substr(n2+1,n1-n2));
   var box = document.getElementById('box');
   box.innerHTML = txt;
   var loc = location.href;

location.href; 返回完整的URL(当前页):

将返回的值给变量 loc

n1 = loc.length;将URL长度记为n1

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

n2 = loc.indexOf('='); 等号首次出现的位置,记为n2

loc.substr();

在字符串中抽取从 start 下标开始的指定数目的字符。

起始下标(start)为n2+1(等号后面的一个字符)

子串中的字符数(length)为n1-n2(总长度减去等号出现的位置)


decodeURI();    对一个编码后的URL进行解码


解码后的内容存放在 txt中

 var box = document.getElementById('box');
 box.innerHTML = txt;

读取内容:txt的内容

参考资料:

https://www.cnblogs.com/zjm1999/p/10222129.html


以上是关于代码分析 | 没学过JavaScript如何分析简单JavaScript代码的主要内容,如果未能解决你的问题,请参考以下文章

检测vuejs一些小技巧

源码分析之七大设计原则

人人都能看得懂的数据分析书

人人都能看得懂的数据分析书

一个bat病毒分析(part1)

[DllImport("user32.dll")]这句代码是啥意思啊?没学过,解释下…