前端语言的一些理解

1、关于this

在面向对象语言中 this 表示当前对象的一个引用。

但是到了 JavaScript 中 this 不是固定不变的,它会随着执行环境的改变而改变。

  • 在方法中,this 表示该方法所属的对象。
  • 如果单独使用,this 表示全局对象。
  • 在函数中,this 表示全局对象。
  • 在函数中,在严格模式下,this 是未定义的(undefined)。
  • 在事件中,this 表示接收事件的元素。
  • 类似 call() 和 apply() 方法可以将 this 引用到任何对象。

标签元素中可绑定点击事件将当前标签对象通过this传给js函数,函数就可以获的/改变这个标签的所有内容,例如下面的例子

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<button id="123" type="button" onclick="test(this)">点我</button>

</body>
<script>

  function test(data) {
    console.log("这里的data就是button这个标签元素对象")
    var a = '标签的id为:' + data.id + ',标签的类型为:' + data.type + ',标签的内容为:' + data.innerHTML
    alert(a)
    data.type = 'submit'
  }

</script>
</html>

2、关于js中的对象

js中的对象在某种意义上基本上就可以理解为json字符串

JSON 本质就是字符串?

3、关于调试

最好使用在代码里添加console.log(this)运行后,打开浏览器控制台可看到运行时的this内容
善用Chrome浏览器的控制台对js的执行进行断点,打了断点后必须打开控制台才会生效,否则是不会进入断点的,在想要打断点的地方输入console.log(this)后,进入控制台就可以进入js实际执行的位置,然后进行断点调试

4、关于字符串

很多方法调用,或者数据传递的引用都是通过字符串直接进行传递的,这一点很不友好,需要着重理解

posted @     阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2021-09-17 理解java回调机制
2021-09-17 Comparator 比较器示例
点击右上角即可分享
微信分享提示