javascript补充

func.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
    function func() {
    } //普通函数

   
setInterval(function(){console.log(123)},5000)
    //定时器 5000毫秒执行一次
    //function(){console.log(123)}
没有名字的函数匿名函数

   
(function (arg){
        console.log(arg);
    })(1) //自执行函数自动创建这个函数并执行 arg为形参 1为实参
</script>
</body>
</html>

序列化:
在console里面操作:
li=[11,22,33,44,55]

列表对象转换成字符串
s=JSON.stringify(li)

对象字符串转换成列表(经常使用 请求返回的字符换转换成数组列表或字典 在循环取)
newLi=JSON.parse(s)

转译
将数据转译后,保存在cookie
url="https://www.sogou.com/web?query=景点"

将中文字符转译成特殊字符
newurl=encodeURI(url)

将特殊字符的url转回中文
decodeURI(newurl)

: / 冒号 杠 问号 中文全部转换成特殊字符
newurl=encodeURIComponent(url)

将url转回 冒号 杠 中文
decodeURIComponent(newurl)



自动点赞py脚本
### 1、首先登陆任何页面,获取cookie

i1 = requests.get(url= "http://dig.chouti.com/help/service")

### 2、用户登陆,携带上一次的cookie,后台对cookie中的 gpsd 进行授权
i2 = requests.post(
    url= "http://dig.chouti.com/login",
    data= {
        'phone': "86手机号",
        'password': "密码",
        'oneMonth': ""
    },
    cookies = i1.cookies.get_dict()
)

### 3、点赞(只需要携带已经被授权的gpsd即可)
gpsd = i1.cookies.get_dict()['gpsd']
i3 = requests.post(
    url="http://dig.chouti.com/link/vote?linksId=8589523",
    cookies={'gpsd': gpsd}
)
print(i3.text)


eval:py里面执行表达式 eval("1+1") 有返回值
exec:py里面执行代码 exec(代码) 没有返回值

在js中:eval 表达式和代码都能执行


时间:
Date对象
var d=new Date() 获取当前时间并赋值
d.getDay() 获取年
d.getHours() 获取小时
d.getMinutes() + 6 加上6分钟

n=d.getMinutes() + 6
d.setMinutes(n) 设置时间

作用域:py里面以函数作为作用域
def func():
    if 1==1:
        name='jack'
    print(name)

func()
print(name) #会报错

javasript:也是以函数作为作用域
  function func() {
        if(1==1){
            var name='jack';
        }
        console.log(name);
    }
    func()

函数的作用域在函数未被调用之前,已经创建
 function func() {
        if(1==1){
            var name='jack';
        }
        console.log(name);
    }

函数的作用域存在作用域链,并且也是在被调用之前创建
 xo="alex";
  function func() {
      var xo='eric';
      function inner() {
          var xo="tony";
          console.log(xo);
      }
      inner()
  }
  func()


 xo="alex";
  function func() {
      var xo='eric';
      function inner() {
          console.log(xo);
      }
      return inner;
  }
  var ret=func()
    ret()

 xo="alex";
  function func() {
      var xo='eric';
      function inner() {
          console.log(xo);
      }
      var xo='tony';
      return inner;
  }
  var ret=func()
    ret()

函数内局部变量提前声明 只声明变量名
解释过程中: var xxoo;值都是undefined
 function func() {
      console.log(xxoo);//输出undefined
      var xxoo='rain';
      console.log(xxoo);//输出rain
  }
  func();


javascript面向对象
 function Foo(n) {  //创建方法
     this.name=n;//定义字段
     this.sayname=function(){
        console.log(this.name);} //定义方法
 }
 var obj=new Foo('we');//创建对象
obj.name 获取字符串
obj.sayname()
1.this代指对象(python self)
2.创建对象时,new 函数名()

javascript原型相当于python的类的方法
function Foo(n) {
    this.name=n;
}

#Foo的原型 原型是一个字典 key是方法名 value是具体的函数
Foo.prototype={
    'sayname':function () {
        console.log(this.name)
    }
}
obj1=new Foo('we');
obj1.sayname()



python的面向对象
class Foo:
    def __init__(self,name):
        self.name=name
    def sayname(self):
        print(self.name)
obj1=Foo('we')
obj2=Foo('wee')

原文地址:https://www.cnblogs.com/leiwenbin627/p/10849637.html