1.nodejs运行js的时候

navigator如果找不到可以可设置为空对象

var navigator={};

2.使用nodejs如果window对象找不到的时候

可以使用jsdom模块

3.顶层代码调用的对象的this

浏览器里表示window,nodejs中表示object

4.以下获取属性的两种方式

obj.x //写死代码里

obj["x"] //可以动态调用属性,[]内是字符串

5.xhr相关

var xhr = new XMLHttpRequest(); //创建xhr对象
xhr.open("GET", url, true); //请求数据 用GET方法 异步获取
xhr.onreadystatechange = function() { //一个事件可以获取请求之后的东西
 
if (xhr.readyState == 4 && xhr.status == 200) {
console.log(xhr.responseText);
}
};

6. 在js中使用Function可以实例化函数对象,也就是说在js中函数和普通对象一样。

函数是Function的实例

语法:

new Function(arg1, arg2........argN, body);

1,Function中的参数全部是字符串。

2,构造函数的作用是将参数连接起来构成函数。

       * 如果参数只有一个即是表示函数体。

       * 如果参数多个,最后一个为函数体,前面的全是表示函数参数。

       * 如果没有参数,即创建空函数。

以下两种创建函数示例的方法是一样的

function foo(num) {

   console.log(num)
} 等价于
var func = new Function("num","console.log(num);"); //参数都是字符串,最后一个参数是函数体的内容。

分别通过以下方式调用

foo(5)
func(5)

7.使用require模块化,define使用

define(['myLib'], function(myLib) {
function foo() {
myLib.somefunction()
}
return {
foo: foo
};
});

8.use strict 指令

严格模式中 所有的变量都要声明(在非严格模式中,给未声明的变量赋值,是给全局对象window对象添加一个属性)

严格模式中 函数(不是方法)中的this值为undefined,非严格模式指代全局对着(window)

9.&&可以当if使用

var a;
1==1 && a=2

表示如果前面条件1==1为true,则a=2。

10.btoa是window下的方法,相当于base64

11.参数加密规则

对于不知道的加密字符串,首先为HEX,然后按照下面表尝试

ggzip 1f .8b. 08
lzma 6c.00
zlib 78.51

12. 参数获取途径

1.直接HTML源码

2.写死在JS

3.来自cookie

4.响应中获取

13. 无限debugger

(function(){}).constructor ===Function

执行

Function.prototype.constructor=function(){};

回车

可以置空。

js逆向笔记的更多相关文章

  1. JS逆向-抠代码的第二天【手把手学会抠代码】

    今天的学习项目:沃支付:https://epay.10010.com/auth/login 清空浏览器缓存后,打开网页,输入手机号,密码222222,按照网站要求填入验证码(sorry,我没有账号密码 ...

  2. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  3. Vue.js学习笔记(2)vue-router

    vue中vue-router的使用:

  4. js读书笔记

    js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...

  5. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  6. JS 学习笔记--9---变量-作用域-内存相关

    JS 中变量和其它语言中变量最大的区别就是,JS 是松散型语言,决定了它只是在某一个特定时间保存某一特定的值的一个名字而已.由于在定义变量的时候不需要显示规定必须保存某种类型的值,故变量的值以及保存的 ...

  7. node.js系列笔记之node.js初识《一》

    node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...

  8. JS面向对象笔记二

    菜单导航,<JS面向对象笔记一>,  参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...

  9. WebGL three.js学习笔记 使用粒子系统模拟时空隧道(虫洞)

    WebGL three.js学习笔记 使用粒子系统模拟时空隧道 本例的运行结果如图: 时空隧道demo演示 Demo地址:https://nsytsqdtn.github.io/demo/sprite ...

随机推荐

  1. js javascirpt 数学库、 算法库 (转载)

    提示:国外官网,谷歌浏览器右键可以翻译成中文. 1.math.js 官网:https://mathjs.org/index.html 其它简介:https://www.jianshu.com/p/4f ...

  2. SQL SERVER-3种连接

    Nested Loops Join Merge Join Hash Join

  3. 02- web-mini框架添加路由、MySQL(二)

    本篇在上篇的基础上为其增设路由功能,同时将上篇中的数据库中数据备份添加进去. 一.装饰器 在之前有介绍过为一个函数不改变源代码不改变原函数的调用方式下为其增设附加功能,需要用到装饰器,而在该上篇的we ...

  4. 【转】IP报文格式详解

    下图为常见的IP报文格式表: 上面是IP的报文格式,接下来我们先说明各个字段的意义.然后,用Etheral软件转包分析IP的报文格式. 1.版本:ip报文中,版本占了4位,用来表示该协议采用的是那一个 ...

  5. 搭建exsi主机6.5版本

    1.服务器读取到镜像,进入此图: 2.回车或者F11安装进行下一步 至此exsi主机安装和配置IP完成(80和443端口的开关会影响远程登录) 在浏览器输入IP登录exsi主机 正常安装centos就 ...

  6. 在linux上安装python

    转自:https://www.cnblogs.com/qq631243523/p/10191726.html 一,前言 centos7默认是装有python的,咱们先看一下 [root@glh ~ 2 ...

  7. 原生JavaScript和jQuery的较量

    JavaScript和jQuery有很多相似知促,那么二者又是如何进行较量,我们先了解一下什么是JavaScript和jQuery,知其源头,才能知其所以然. 简介: [JavaScript] 一种直 ...

  8. .net框架-字典对象 Hashtable & Dictionary<TKey,TValue> & SortedList

    字典对象: 字典对象是表示键值对的集合 字典对象有Hashtable(.net 1.0)及其泛型版本Dictionary<TKey,TValue> 字典对象还包括SortedList及其泛 ...

  9. tomcat绑定项目classes路径

    在Host中加入如下内容: <Context path="" docBase="D:\svn\MainSource\WebRoot" debug=&quo ...

  10. Flume源码更改

    1.源码更改场景:如果使用 0.8 版本 Kafka 并配套 1.6 版本 Flume,由于 Flume 1.6 版本没有Taildir Source 组件,因此,需要将 Flume 1.7 中的 T ...