小编Ada*_*ady的帖子

js中的函数通过值或引用复制/传递

我知道Javascript中的对象是通过引用复制/传递的.但功能怎么样?

当我跳到令人困惑的东西时,我正在尝试这段代码.这是代码片段:

x = function() { console.log('hey 1'); }

y = x;

x = function() { console.log('hey 2'); }

y; // Prints function() { console.log('hey 1'); }
Run Code Online (Sandbox Code Playgroud)

如果通过引用复制/传递像对象这样的函数,为什么y不会更新以打印'hey 2'?

如果这种行为是因为'x'被赋予了一个全新的函数,当x改变时,有没有办法将变量'y'变换为新分配的函数?

javascript

4
推荐指数
1
解决办法
88
查看次数

HTML5视频无法与crossOrigin =“ anonymous”一起播放

我正在尝试将HTML5视频播放器集成到我的应用程序中。我的视频源和字幕(用于跟踪标记)来自其他域。

当我使用

<video crossOrigin="anonymous">
   <source src="domain1Url"> ... </source>
   <track kind="captions" label="English Captions" src="domain2Url" srclang="en" default>
</video>
Run Code Online (Sandbox Code Playgroud)

在Chrome不安全模式(已禁用网络安全性)下,上述所有代码对我来说都可以正常工作。使用常规Chrome时,如果我未指定crossOrigin属性,则会收到一条错误消息:

已阻止从原点“ ...”开始的文本轨道的加载:与文档的原点不在同一原点,并且track元素的父级没有“ crossorigin”属性。因此,不允许访问源“ http:// localhost ...”。

指定crossOrigin属性后,字幕API成功获取数据。但是视频无法播放。谁能建议我如何使用crossOrigin属性集来播放视频?

video html5 cross-domain cross-domain-policy closed-captions

4
推荐指数
1
解决办法
5943
查看次数

检查icmp指令中的sgt

 %4 = icmp sgt i32 %2, %3
Run Code Online (Sandbox Code Playgroud)

对于上面的指令,我该如何检查icmp指令是否包含sgt或slt?

llvm

3
推荐指数
1
解决办法
1307
查看次数

调用传递给JQuery处理程序的函数

function test() {
  var str = 'adarsh';

  // f1(); - This gives an error.
  $('body').click(function f1() {
    console.log(str);
  });
}

test();
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

我想知道为什么上面的代码片段在我尝试访问f1()函数测试时会出错.

作用f1范围是什么?
我知道它不是窗口,因为window.f1在执行上面的代码片段后我无法访问.

注意:我知道我可以先声明函数f1然后在click函数中传递对它的引用.但是,如果我们无法通过该名称访问它们,我想知道在这种情况下命名"匿名"函数的重点是什么.

javascript jquery

3
推荐指数
1
解决办法
53
查看次数

确保变量的值是否发生变化

有没有办法确定特定的SSA变量值在程序中的2个点之间不会发生变化?

llvm

2
推荐指数
1
解决办法
149
查看次数

使用 Array.prototype.filter 过滤嵌套的子对象

我有一个类似于以下代码块的对象数组:

var arr = [
	{
    	text: 'one',
        children: [
        	{
            	text: 'a',
                children: [
                	{
                        text: 'something'
                    }
                ]
            },
            {
            	text: 'b'
            },
            {
            	text: 'c'
            }
        ]
    },
    {
    	text: 'two'
    },
    {
    	text: 'three'
    },
    {
    	text: 'four'
    }
];
Run Code Online (Sandbox Code Playgroud)

在上面的结构中,我想在text属性中搜索一个字符串,我需要对所有children.

例如,如果我搜索something,结果应该是以下形式的对象数组:

[
	{
        children: [
        	{
                children: [
                	{
                        text: 'something'
                    }
                ]
            }
        ]
    }
];
Run Code Online (Sandbox Code Playgroud)

请注意,所有text与输入字符串不匹配的属性something都已被删除。

我想出了以下代码块,使用Array.prototype.filter. 但是,我仍然可以在结果中看到额外的属性:

function search(arr, str) …
Run Code Online (Sandbox Code Playgroud)

javascript arrays

2
推荐指数
1
解决办法
3011
查看次数

设置 LLVM IR 中指令的下一个节点

1: %mul2 = fmul 浮点数 %1, %1

2: %mul3 = fmul 浮点数 %mul2, %1

3: %mul4 = fmul 浮点数 %mul3, %1

4: %mul5 = fmul 浮点数 %mul4, %1

5: %mul6 = fmul 浮点数 %mul5, %1

6: %mul7 = fmul 浮点数 %mul6, %1

7:存储浮点%mul5,浮点*%x,对齐4,!tbaa!0

我想将 %mul5 的下一个节点设置为 %mul7。getNextNode() 函数将下一个节点指定为 %mul6(我想删除它)。有什么函数可以做到这一点吗?

llvm

1
推荐指数
1
解决办法
1603
查看次数