this指针的值是否保证在特定对象的生命周期内保持不变?我无法想象它会改变的情况,但不知道我是否没有遗漏一些东西。
使用Jquery UI Sortable时(顺便说一句,这很棒)如何获取当前正在排序的项目.
当您使用$(this);它时,返回实际的可排序列表,而不是当前排序的项目.
当用户拖动它时,我想用小部件做一些花哨的东西.例如,在两个列表之间拖动时为其设置动画.
那么如何才能对当前项目进行排序?
下面有一些代码只是为了解释一下......
$(function() {
$("#sortable_1").sortable({
start : function(event, ui){
//get current element being sorted
},
stop : function(event, ui){
//get current element being sorted
}
}).disableSelection();
});
Run Code Online (Sandbox Code Playgroud) 我很难在对象方法中的javascript内联函数中引用"this".
var testObject = {
oThis : this,
testVariable : "somestring",
init : function(){
console.log(this.testVariable); // outputs testVariable as expected
this.testObject.submit(function(){
var anotherThis = this;
console.log(this.testVariable) // undefined
console.log(oThis.testVariable) // undefined
console.log(testObject.testVariable) // outputs testVariable
console.log(anotherThis.testVariable) // undefined
}
}
Run Code Online (Sandbox Code Playgroud)
如何this.testVariable从提交功能中进行访问?我也使用jQuery,如果这有所不同.
我想知道这是否是最好的方法 - 也许我应该作为一个单独的函数提交,然后引用内联,如:
init : function(){
this.testObject.submit = this.submitForm;
},
submitForm : function(){
// do validation here
console.log(this.testVariable) // outputs testvariable
.
.
.
return valid;
}
Run Code Online (Sandbox Code Playgroud)
但这似乎也没有用 - 我想我现在只想在我的init方法中保持提交函数内联.
我不是jquery中最好的,我遇到了var初始化,我不知道编写代码的人为什么会这样做.
在插件的init中,我们有
this.init = function(settings) {
var $this = this;
this.s = {
initialSlide: 0,
firstSlide: true,
};
... more code, some uses $this, some uses "this"
}
Run Code Online (Sandbox Code Playgroud)
那么"$ this"和"this"之间有什么区别,为什么不一直使用一个或另一个呢?
有什么办法可以在特定索引处添加值吗?我尝试做索引器,我有列表.在这种情况下,有没有任何技巧可以做到这一点:D
public class Multime<T>
{
private List<Multime<T>> multiSets;
private List<T> multimea;
***public Multime<T> this[int index]
{
get { return this.Multisets.ElementAt(index); }
set { this.Multisets.CopyTo(value,index); }
}***
public List<Multime<T>> Multisets
{
get { return this.multiSets; }
set { this.multiSets = value; }
}//accesori Multimea de multimi
public List<T> Multimea
{
get { return this.multimea; }
set { this.multimea = value; }
}//Accesori Multime
Run Code Online (Sandbox Code Playgroud) 我是一名C#开发人员,正在尝试使用JavaScript,我正试图让我的头脑在我的范围内:)
我有以下代码,其中包含addEventListener我想要使用我的对象中的字段:
(function(window) {
function Keyboard() {
this.keys = {};
}
Keyboard.prototype.handle_keydown = function(args) {
this.keys[args.keyCode] = true;
}
Keyboard.prototype.listen = function() {
window.addEventListener('keydown', this.handle_keydown);
}
app.util.keyboard = new Keyboard();
})(window);
Run Code Online (Sandbox Code Playgroud)
我想在我的hander中使用keys数组,但是理解我无法访问是通过使用它,因为这是该上下文中的窗口(正确吗?).如果我改成它
app.util.keyboard.keys[args.keyCode] = true;
Run Code Online (Sandbox Code Playgroud)
它有效,但我不确定这是一个很好的解决方法.
我发现这个问题似乎很相似,但我不确定如何将它融入我的例子中.
谢谢你的帮助!
返回对此对象的引用通常用于赋值运算符重载.它还用作命名参数idiom的基础,它允许通过对setter方法的调用链初始化对象:Params().SetX(1).SetY(1)每个都返回对*this的引用.
但是返回引用是否正确*this.如果我们调用该方法为临时对象返回对此的引用,该怎么办:
#include <iostream>
class Obj
{
public:
Obj(int n): member(n) {}
Obj& Me() { return *this; }
int member;
};
Obj MakeObj(int n)
{
return Obj(n);
}
int main()
{
// Are the following constructions are correct:
std::cout << MakeObj(1).Me().member << std::endl;
std::cout << Obj(2).Me().member << std::endl;
Obj(3).Me() = Obj(4);
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我试图搜索似乎整个互联网的内容,但我仍然对JS类的问题感到烦恼,我正在为微服务写作(仍在学习中).
所以,我尝试在实例化的对象上调用一个类方法,并根据我的知识和我的(我猜错的)单元测试它应该工作.
好吧,我将从收到的错误开始:
GET /api/users 500 2.863 ms - 2649
TypeError: Cannot read property 'repository' of undefined
at list (C:\Users\<user>\Documents\Programming\node\kaguwa-ngn\kaguwa-user-service\controllers\user-controller.js:20:9)
at Layer.handle [as handle_request] (C:\Users\<user>\Documents\Programming\node\kaguwa-ngn\kaguwa-user-service\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\<user>\Documents\Programming\node\kaguwa-ngn\kaguwa-user-service\node_modules\express\lib\router\route.js:137:13)
Run Code Online (Sandbox Code Playgroud)
(还有更多).
代码调用代码:
user-controller.js
'use strict';
var utils = require('./utils');
class UserController {
constructor(repository) {
this.repository = repository || {};
}
/**
*
* Lists all users.
*
* @param {object} req
* @param {object} res
*/
list(req, res) {
this.repository.list(function (err, users) {
if (err) return res.status(500).json(utils.createError(500));
if (Object.keys(users).length !== 0) { …Run Code Online (Sandbox Code Playgroud) 有人知道在 Eclipse 的内容帮助中将this关键字 (Java) 标记为的原因static final吗?final对我来说很有意义,但为什么static呢?
该屏幕截图是使用 Eclipse 2020-03 制作的,但我多年来一直在观察这种行为。
我有一个PHP类型的对象MyObject.
$myObject instanceof MyObject
Run Code Online (Sandbox Code Playgroud)
现在,在class MyObject,有一个非静态函数,在那里,我使用"我"的引用$this,但我也有另一个对象.
是否有可能在不做的情况下$this = $myObject实现或多或少相同的效果,比如某种类似的东西set_object_vars($this, get_object_vars($myObject))?