zoukankan      html  css  js  c++  java
  • 02. js逆向需要的js知识

    1. js简介

    2. 与css和html之间的关系

    html是结构层,闲荡与人的骨骼

    css是表现层, 相当于衣服

    js是行为层, 相当于人的行为和动作

    2.js语法

    2.1 数据类型

    Object对象

    • 是以key-value键值对的形式存在的集合
    • 键 都是字符串类型
    • 值 可以使任何类型
    • 对象的拷贝分为深拷贝和浅拷贝
      • 浅拷贝:支付至对象内存地址,类似于指针
      • 深拷贝:完全克隆,生成一个新对象

     

    let obj = {hello:'world'};
    let obj1 = obj;  // 浅拷贝 对新值进行修改会改变原来的值
    let obj2 = JSON.parse(JSON.stringify(obj));  // 深拷贝, 生成一个新的对
            // this is an object
            let me = {
                name:'zj',
                age:'19',
                gender:'male',
                hobby:'game'
            };
    
            // assign attributes
            me.title = 'mr';
            me.education = 'collage';
    
            // get all keys
            Object.keys(me);
    
            // get all values
            Object.values(me);
    
            // iterate
            for (let key in me) {
                if (me.hasOwnProperty(key)){
                    const value = me[key]
                }
            }

    Array数组

    1. 数组是一个有序排列的集合
    2. 数组的值可以使任意类型
    3. 数组的拷贝分为深拷贝与浅拷贝
      1. 与对象一致

      

        let items = [1,2,3,4,5];
    
        alert(items[0]);
    
        items[0] = '0';
    
        items.length;
    
        items.push(6);
        items.pop();
    
        // 插入/替换元素
        items.splice(
            0, //要插入的位置
            0, // 替换多少个元素
            'a' // 替换成什么元素
        );
        // 删除元素
        items.splice(
          1, //从哪个元素开始删
          2  //删除多少个元素
        );
    
        // 遍历元素
        items.map(d => d+1);   返回一个新数组
        items.forEach(d => {   不返回新数组
            // dosomethint
        })

    String字符串

      单引号或者双引号括起来的数据

    Number数字

      任何表示数组的类型

    Boolean布尔值

      表示true 或者 false的类型

    Map映射

    • 键值对关系的集合
    • 与对象不同的是,键可以是任意类型
    • let m = new Map([[1,1], ['1', '1']])

    Set集合

    • 相当于不重复的数组
    • let s = new Set([1,1,1,1,2])

    null/undefined

    • null 表示该值为空
    • undefined表示未定义

    === 双方值相同, 类型也相同,  == 将两个值转换成同类型, 再进行比较

    js控制流

    循环

    while

    for

    array

      map

      foreach

        let a = 0;
        while (a<10) {
            a++
        }
    
        for(let i=0;i<10;i++){
            console.log(i);
        }
    
        const arr = [1, 2, 3];
    
        const arr2 = arr.map(d => d+1);
    
        arr.forEach(d => console.log(d));
        

    条件控制

        let b = 1;
        let c = 2;
        if (b > c){
            // do something
        } else if (a === b) {
            // do something
        } else {
            // do something
        }
  • 相关阅读:
    使用控制台来启动.net core 的程序
    论钱的意义
    js 将图片转换为 base64
    CPU 的由来
    C# Cef winform 脚本的执行 踩过的坑
    什么是JSONP?
    Cookie和Session
    request
    response和ServletContext和乱码问题
    Servilet初步
  • 原文地址:https://www.cnblogs.com/zhangjian0092/p/12239118.html
Copyright © 2011-2022 走看看