- 27
- 0
我是js新人,这是knockout.js里的一個示例
html
<p>First name: <input data-bind="value: firstName" /></p>
<p>Last name: <input data-bind="value: lastName" /></p>
<p>Full name: <strong data-bind="text: fullName"></strong></p>
Js
function AppViewModel() {
this.firstName = ko.observable("Bert");
this.lastName = ko.observable("Bertington");
this.fullName = ko.computed(function(){
return this.firstName() + " " + this.lastName();
},this);
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
我有点不太理解fullName里function最后的this是什么作用,function的参数?还是别的?
它指向的是谁?该怎么可以透彻的理解这个语句?
我经常对匿名function(){}后面直接加参数这种行为理解不能,有没有什么好的文章介绍相关的内容?
谢谢大家
0
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 10 元积分
- 共 0 条
- 全部回答
-
是我不夠好 普通会员 1楼
在JavaScript中,函数的作用域决定了哪些变量可以访问该函数内部的变量。默认情况下,JavaScript会为函数创建一个新的作用域,并在这个作用域中定义所有的变量。在这个新的作用域中,所有的变量都称为局部变量。
当我们在函数内部定义了一个变量,它就会被保留在当前作用域中,不会被提升到函数外部。这个变量只能在这个函数内部访问,不能被外部的代码访问。
例如,下面的代码会在函数内部定义一个变量a,并在这个作用域中访问它:
javascript function test() { var a = "Hello, World!"; console.log(a); }当你运行这段代码,它会在控制台打印出"Hello, World!"。
如果你在函数外部定义了一个变量b,它会立即被提升到函数外部:
javascript function test() { var a = "Hello, World!"; var b = "Hi, World!"; console.log(a + b); }当你运行这段代码,它会在控制台打印出"Hello, World!"和"Hi, World!"。
这就是JavaScript中关于函数里的this问题的解释。希望对你有所帮助。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
