小编Tee*_*emu的帖子

对象内部引用声明

我正在注意一种快捷方式,可以将字典中的值用作字典中的内部引用.代码显示了我的意思:

var dict = {
    'entrance':{
        'rate1': 5,
        'rate2':10,
        'rate3':20,
    },

    'movies':{
        'theDarkKnight':{
            '00:00':<entrance.rate1>,
            '18:00':<entrance.rate2>,
            '21:00':<entrance.rate3>
        },
        ...
    };
Run Code Online (Sandbox Code Playgroud)

这是一种偷偷摸摸的方式吗?

javascript

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

嵌套对象和数组解构

我试图使用解构将对象转换为更精简的版本.

我的对象包括一个嵌套数组,它也包含对象,从这个数组我只想要几个字段.

我可以做嵌套对象解构很好,并且数组解构很好但不在一起吗?

我目前的尝试看起来像这样:

var data = {
    title: "title1",
    bar: "asdf",
    innerData: [
       {
        title: "inner-title1",
        foo: "asdf"
       },
       {
        title: "inner-title2",
        foo: "asdf"
       }
    ]
};

var { title, innerData: [ { title} ] } = data;

console.log(title);

for (var { title} of innerData) {
  console.log(title);
}
Run Code Online (Sandbox Code Playgroud)

但是得到一条消息说 innerData is not defined.

我希望的结果可能是:

{
    title: "title1",
    innerData: [
       {
        title: "inner-title1"
       },
       {
        title: "inner-title2"
       }
    ]
};
Run Code Online (Sandbox Code Playgroud)

javascript arrays typescript ecmascript-6

10
推荐指数
2
解决办法
2415
查看次数

JavaScript indexOf来自搜索字符串的结尾

Javascript String.indexOf返回字符串中搜索词的索引.

它从搜索字符串的开头返回首次找到字符串的索引.例:

'abcdefghijklmnopqrstuvwxyz'.indexOf('def') = 3;
Run Code Online (Sandbox Code Playgroud)

但我需要从搜索结束时获取它,例如:

'abcdefghijklmnopqrstuvwxyz'.indexOf('def') = 6; //essentially index + searchString.length
Run Code Online (Sandbox Code Playgroud)

这样我就可以String.substr从返回的值中获取该点之后的字符串.

javascript

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

如何检测鼠标何时触发鼠标移动?

我试图通过拖动实现页面panorate.在我的实现中,用户释放鼠标按钮后页面会移动一段时间,就像在Google地图中拖动地图一样.现在,当用户释放按钮时鼠标不再移动时,我想阻止此效果.问题是,我无法弄清楚如何在mouseup事件被触发时检测鼠标是否真的移动.

现在我试图通过计算拖动速度来解决这个问题,然后将速度与预先估计的"灵敏度"进行比较,这种"灵敏度"大部分时间都有效,但有时会失败.

jsFiddle的简化示例.在玩小提琴的时候,请在FF中使用中间按钮,draggabble div"粘在"左按钮上.

伪代码:

AniMove = function (doc, element, sensitivity, panspeed, duration) {
    var mouseDown = function (e) {
            sTime = new Date();
            originalX = mouseX = e.clientX;
            originalY = mouseY = e.clientY;
            /* addEventListeners mousemove & mouseup for document */
            return;
        },
        mouseMove = function (e) {
            /* Setting new position for #square + new mouseX & Y */
            return;
        },
        mouseUp = function () {
            var dc = 1;
                /* removeEventListeners mousemove & mouseup …
Run Code Online (Sandbox Code Playgroud)

javascript mouseevent

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

我如何检索textarea的当前值?

问题:所以我通过以下方式提醒了价值textarea:

var source = document.getElementById('source').value;
            alert(source);
Run Code Online (Sandbox Code Playgroud)

但是,textarea在页面加载时,它的值会被警告.我想提醒当前的价值textarea.我也试过了

$("form").submit(function(){
Run Code Online (Sandbox Code Playgroud)

但那也没有帮助我.那我该怎么做呢?

这是我的代码.

<html>
    <head>
    <title>Perl WEB</title>
    <script type="text/javascript" src="http://code.guru99.com/Perl1/codemirror.js"></script>
    <link rel="stylesheet" href="http://code.guru99.com/Perl1/codemirror.css" type="text/css" media="screen" />
    <script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
    <script type="text/javascript" src="http://code.guru99.com/perl/perl.js"></script>
    <style>
    .CodeMirror {
    border: 1px solid #eee;
    }   
    .CodeMirror-scroll {
    height: auto;
    overflow-y: hidden;
    overflow-x: auto;
    }
</style>
<script>
$(document).ready(function(){
  $("form").submit(function(){
    alert("Submitted");
  });
});
</script>
<script type="text/javascript">

    function execute() {
            p5pkg.CORE.print = function(List__) {
                var i;
                for (i = 0; i < List__.length; i++) {
                  document.getElementById('print-result').value …
Run Code Online (Sandbox Code Playgroud)

html javascript codemirror

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

如何在 LokiJS 中删除集合

我最近一直在 Node 上研究 LokiJS,但我找不到删除整个 Collection 本身的命令,

我尝试使用这些命令,假设它会存在,但我找不到任何文档/示例来删除集合。

// let result = this.db.dropCollection(collectionName); // let result = this.db.removeCollection(collectionName); // let result = this.db.deleteCollection(collectionName);

换句话说,我知道我可以通过读取文件并删除整个对象来实现相同的目的,但是有内置的 LokiJS 函数吗?

javascript node.js node-modules lokijs

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

使用getElementsByClassName选择所有类,然后单击

我似乎无法点击所有课程

document.getElementsByClassName('node closed')[0].click();
Run Code Online (Sandbox Code Playgroud)

这有效但只会点击第一个类,我需要这个来点击所有名为'node closed'的类

谢谢

html javascript class

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

Javascript:如何从 JavaScript 对象中获取数字?

data = [ RowDataPacket { test: '12312311' },
    RowDataPacket { test: '12312312' },
    RowDataPacket { test: '12312313' } ]
Run Code Online (Sandbox Code Playgroud)

我想将此对象中的数字放入 Javascript 中的数组中。我已经尝试过,.split(/(\d+)/);但在 Chrome 中出现此错误:

未捕获的 TypeError: data.split is not a function

我怎样才能提取数字?

javascript split object

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

了解 HTML 表单元素行为

我有一个带有几个文本字段和一个提交按钮的表单。提交处理程序附加到表单,以便在提交之前验证表单。此外,处理程序应该向用户显示 OK 消息,并最终重定向到首页。

验证工作正常,但当验证成功时,仅短暂显示 OK 消息或根本不显示,并且刷新页面而不是重定向。

表格如下:

<form id="form" method="post">
    <input name="firstname">
    <input name="lastname">
    <input type="submit" value="Submit">
</form>
<div class="hidden v-ok">Validation OK</div>
<div class="hidden v-failed">Validation failed</div>
Run Code Online (Sandbox Code Playgroud)

以及相关的JS:

const form = document.querySelector('#form');

form.addEventListener('submit', e => {
    const controls = Array.from(form.elements),
        valid = controls.every(control => control.value !== '');
    if (!valid) {
        // Validation failed, don't submit
        e.preventDefault();
        // Show ValidationFailed message
        const message = document.querySelector('.hidden.v-failed');
        message.classList.remove('hidden');
        return;
    }
    // Validation OK, show message and submit
    const message = document.querySelector('.hidden.v-ok');
    message.classList.remove('hidden');
    window.setTimeout(() => …
Run Code Online (Sandbox Code Playgroud)

html javascript forms

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

if语句在Javascript中无法正常工作

我试图创建一个逻辑,如果有人进入"<p>" and "</p>"里面的字符<textarea>,那么只有Jquery应该显示获胜消息.我有一个textareahtml,一个h2result显示赢或输.现在,我有这个代码:

var html = $('.html').val();
if(html.indexOf("</p>" && "<p>") === -1)
{
document.getElementById("result").innerHTML = "You lost it.";
}
else{
document.getElementById("result").innerHTML = "Hurray!You won";
}
Run Code Online (Sandbox Code Playgroud)

但是,这段代码只是检查它是否在<p>那里而不是检查.</p>所以我该怎么做....

html javascript jquery

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