js的this什么时候会出现报错

var aa ={
  name:"boy",
  age:12,
  like: function(){
    console.log(this.name);
  }
}
//aa.like();//这样子调用永远不会有this报错的问题。
function box(){
  return function(){
    aa.like();
  }
}
//box()();//这样子也不会报错
var bb = aa.like;
//bb();//这样子写,作用域就会出错
//我们用bind解决这个问题
//aa.like.bind(aa);
var cc = aa.like.bind(aa);
cc();//这样是正常的
//使用call方法必须立刻执行
bb.call(aa);//这样子也是正常的
时间: 2024-12-26 12:32:54

js的this什么时候会出现报错的相关文章

myeclipse_导入js文件报错

myeclipse导入外部的js文件时.myeclipse自动报错.外部导入的官方js包应该是没有错的. 可以选中报错的js文件-->右键-->myeclipse-->exclude from  validation. 还报错的话就继续操作不过最后一步选择Run Validation eclipse下面Project Properties > JavaScript > Include Path > Source > 选中Exclude > 点击edit按钮

nodejs报错roll back,because of a error.node.js setup wizard ended prematurel

win7(我用的是笔记本)在nodejs官方网站下载.msi文件安装,安装到一半的时候,进度条提示:roll back,because of a error.node.js setup wizard ended prematurely. 最后手动安装下exe载包和配置环境变量. 这篇文章里面说到要自己编译npm (http://blog.csdn.net/yczz/article/details/6938260) 我在执行node cli.js install npm -gf的时候老报错 npm

myeclipse解决js文件的报错

myeclipse中建立json文件报错 web工程下建立了一个项目,需要用到json文件,但是建立了一个1.js,随便写点东西就报错了 如图: 内容如下: {"person":{ "name":"silence", "website":"thhp:://localhost:423", "email":"[email protected]" } } myeclipse

ie8 报错:意外地调用了方法或属性访问

在某场景中一句简单的js: $("#changeOption").text("增加"); 在 IE8 下面报错:'意外地调用了方法或属性访问' 改成:$("#changeOption").html("增加"); 报同样的错. 改成:document.getElementById('changeOption').innerText="增加"; 同样报错:"未知的运行时错误" 最后改成:$(

常见问题6:控制台报错整理——报错

报错:"Uncaught ReferenceError: $ is not defined" 分析: 1:加载jquery失败.请再次确认jquery的路径是否正确. 2:如果jquery的路径没有问题,那么就是因为浏览器在解释你的js语句时,还没有加载jquery库.所以,你需要将加载jquery的语句放在head中,即可解决该问题. <script src="js/jquery-3.3.1.js"></script> <script

vue 学1(cp) Eslint 配置及规则说明(报错)

https://blog.csdn.net/violetjack0808/article/details/72620859 https://blog.csdn.net/hsl0530hsl/article/details/78594973 Vue.js学习系列五 -- 从VUE-CLI来聊聊ESLint 原创 2017年05月22日 06:40:41 标签: vue-cli / eslint 7092 最近在用vue-cli写项目的时候,经常和ESLint打交道,也算是不打不相识啦.下面总结一下

javaScript中常见的几种报错类型

一般我们运行代码的时候,在控制台报错会相应的显示你错误的行数,找到那一行,查找你相应的错误 1.xxx is not defined xxx 没有定义 2.xxx is not a function xxx 不是一个函数 xxx此时是undefined 3.Cannot read property 'xxx' of undefined 不能读取undefined的xxx属性 xxx前面的变量是undefined 4.Cannot set property 'xxx' of null 不能给nul

py+selenium 直接给日期赋值,控制台调试报错【已解决】

目标:给带日期控件的输入框赋值. 百度去搜索让你各种去只读readonly属性,再send_keys 方法: 其实既然可以去除readonly属性,那就可以直接给属性赋值,将两行代码缩为一行. driver.execute_script("document.getElementById('planDate').value=20181010;") 这样一行直接搞定. 个人遇到过的一些问题: 当在控制台调试js的时候,可能会遇到控制台报错.控制台报错:无法设置未定义或null引用的属性&q

npm run dev报错,events.js:160 throw er; // Unhandled &#39;error&#39; event

错误代码如下: [email protected] dev E:MySoftwaretestGitwebpackvue-projectnode build/dev-server.js "8088" events.js:160 throw er; // Unhandled 'error' event ^ Error: listen EACCES 0.0.0.0:8080 at Object.exports._errnoException (util.js:1026:11) at expo