gpt4 book ai didi

javascript - 作为参数传递时,对象变成数字

转载 作者:行者123 更新时间:2023-11-28 18:18:49 25 4
gpt4 key购买 nike

我对此很陌生,只是偶然发现了这个奇怪的事情:

我正在使用函数requestAnimationFrame并且必须传递一个对象作为参数。 This Question向我展示了如何将参数传递给回调函数,但是当我传递一个对象时,它在函数内变成一个(看似随机的)数字:

var myObj = {name : "Sanchez",  surname: "Pedro"};

console.log("outside", myObj); // shows me the object
console.log("outside", typeof(myObj)); // object

requestAnimationFrame(function(myObj) {

console.log("inside", myObj); // shows me a random number
console.log("inside", typeof(myObj)); // number
// doSomethingToPedro(myObj)

});

(see jsFiddle)

我现在的问题是,(A) 如何正确地将对象传递给回调,以及 (B) 为什么会发生这种情况?

最佳答案

在函数requestAnimationFrame()中,您没有在回调中传递myObj全局对象,您实际上是在设置参数名称as myObj 只能在回调函数作用域中访问,其类型为 DOMHighResTimeStamp根据requestAnimationFrame()文档。

关于javascript - 作为参数传递时,对象变成数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40300224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com