首先来看一个demo:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text" name="" id='test' onclick="demo(this)">
<script type="text/javascript">
function demo(this) {
console.log(this);
}
</script>
</body>
</html>
本想打印出id为test的input元素对象,结果报错Uncaught SyntaxError: Unexpected token this
这是什么原因呢?
仔细想了一下,将function中的参数 this 改成其他字符串试试,结果还真的不报错了,程序正常运行。
原来是因为this是JavaScript中的关键字,不能在形参中作为变量名使用。
正确的代码再看一下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text" name="" id='test' onclick="demo(this)">
<script type="text/javascript">
function demo(obj){
console.log(obj);
}
</script>
</body>
</html>
一个小小的知识点,哈哈!