小编Sac*_*cha的帖子

检查对象是否是类的"直接实例"

我有两节课:

class Bar extends Foo { // Foo isn't relevant
  constructor(value) {
    if (!(value instanceof Foo)) throw "InvalidArgumentException: (...)";
    super();
    this.value = value;
  }
}

class Baz extends Bar {
  constructor(value) {
    super(value);
  }
}
Run Code Online (Sandbox Code Playgroud)

Bar constructor如果检查value是美孚的一个实例,它如果不是抛出一个错误.至少,这就是我想要的.如果传递a Bar或a Bazas值,则if语句true也会返回.目标是只让我们Foo通过.
我已经找到了这个答案,但这并没有真正回答我的问题.

javascript class subclass object instance

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

为什么这两个javascript 2d阵列的行为有所不同?

在我的函数中,我定义了两个数组,第一个(array1),具有预初始化的长度.我添加了第二个数组(array2)仅用于测试,因为我认为第一个表现很奇怪.

我的代码:

function test(n = 3) {
  array1 = new Array(n).fill(new Array(n));
  array2 = [
    [undefined, undefined, undefined],
    [undefined, undefined, undefined],
    [undefined, undefined, undefined]
  ];

  document.getElementById("output").innerHTML = JSON.stringify(array1) + " (array 1) <br/>" + JSON.stringify(array2) + " (array 2)<br/><br/><hr/>";


  for (i = 0; i < n; i++) {
    array1[i][0] = i;
    array2[i][0] = i;
  }

  document.getElementById("output").innerHTML += JSON.stringify(array1) + " (array 1) <br/>" + JSON.stringify(array2) + " (array 2)<br/><br/><hr/>";

}
Run Code Online (Sandbox Code Playgroud)
<button onclick="test();">Press to test</button>

<br/><br/>
<div …
Run Code Online (Sandbox Code Playgroud)

javascript arrays multidimensional-array

6
推荐指数
2
解决办法
103
查看次数

Service Worker 加载新页面时出现 ERR_FAILED,为什么?

我在教程的帮助下编写了一个服务工作者:

var CACHE = 'cache-and-update';

self.addEventListener('install', function (evt) {
    console.log('The service worker is being installed.');

    evt.waitUntil(precache());
});

self.addEventListener('fetch', function (evt) {

    evt.respondWith(fromCache(evt.request));

    evt.waitUntil(update(evt.request));
});

function precache() {
    return caches.open(CACHE).then(function (cache) {
        return cache.addAll([
            // Nothing.
        ]);
    });
}

function fromCache(request) {
    return caches.open(CACHE).then(function (cache) {
        return cache.match(request).then(function (matching) {
            return matching || Promise.reject('no-match');
        });
    });
}

function update(request) {
    return caches.open(CACHE).then(function (cache) {
        return fetch(request).then(function (response) {
            return cache.put(request, response);
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

它总是首先从缓存中提供服务,然后获取所有文件,并在页面重新加载时进行更新。

服务工作者在我服务器上的每个 HTML 文件中都是这样注册的:

<script>
    navigator.serviceWorker.register('https://www.example.com/sw.js', { …
Run Code Online (Sandbox Code Playgroud)

javascript caching service-worker

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

如何设置元素的 textContent,而不修剪字符串?

我正在尝试将元素的文本内容(div元素)设置为用户作为输入提供的内容。我真的不想使用,element.innerHTML = (...)因为那样它可以被解析为 HTML 代码而不是纯文本,所以我使用element.textContent = (...).
但是,输入字符串的开头(和结尾)可能有空格,我不希望在插入元素之前对字符串进行修剪。
使用innerHTML,我可以简单地用 替换所有空格&nbsp;,但textContent不会将其显示为空格,而是显示为普通的&nbsp;

我该怎么做?提前致谢 :)

html javascript trim

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

如何有效地两次使用这个计算的结果?

我对 Haskell 比较陌生,目前正在做我的第一个项目。我写了一个函数,它根据对另一个函数的调用返回一些东西,它再次调用这个函数(所以它是递归的)。

function :: a -> a
function a
  | null (recursive call) = a
  | otherwise = head (same recursive call)
Run Code Online (Sandbox Code Playgroud)

如何只进行一次递归调用并使用两次结果(作为条件和“返回值”的一部分)?

haskell

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

按下tab键后如何不离开输入字段?(javascript/html)

我想知道我是否可以有一个输入字段,如果有人(在输入字段中输入)按下 TAB 键,而不是切换焦点(所以它必须专注于第一个输入字段,而不是转到下一个)。

此外,它必须检测某人何时按下 TAB 键,并在释放TAB 键时执行功能。
代码必须是纯 javascript

这可能吗?如果是这样,如何?

html javascript input

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

如何在具有最大高度的 contenteditable div 中显示滚动条?

我有一个divcontenteditable标签设置为true
此外,我已经添加了widthheight等使用CSS。

然后这是结果:

#stringinput {
    min-width: 20em;
    min-height: 1.4em;
    max-width: 40em;
    max-height: 10em;
    padding: 0.3em 0.5em 0 0.5em;
    background-color: white;
    font-size: larger;
    text-align: left;
    border: 3px solid black;
    border-radius: 5px;
}
Run Code Online (Sandbox Code Playgroud)
<div contenteditable="true" id="stringinput" spellcheck="false"></div>
Run Code Online (Sandbox Code Playgroud)

它工作正常,但是当您输入并达到max-height限制时,div 向下扩展,但边框保持在应有的位置。

所以,我希望当有人达到max-height限制时出现一个滚动条,这样 div 就不会进一步向下扩展。我该怎么做?

html css scrollbar contenteditable

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

href目标选项卡应首先打开一个选项卡,然后再次更新

我对HTML很新,我有资深,我在一个HTML页面中有两个锚标记.

例如:main.html中

<a href ="https://www.google.co.in/" target="_blank">Google</a><br>
<a href ="https://www.facebook.com/" target="_blank">facebook</a>
Run Code Online (Sandbox Code Playgroud)

我的目标是在用户首次点击链接时在新标签页中打开Facebook或Google.

当用户再次点击链接时,它不应该打开新标签,而是应该更新已经打开的Google或Facebook标签.

html javascript html5

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

如何获取以子字符串开头的所有elementID

我有这个代码:

HTML:

<div class="lists">
    <div class="list 1">
        <div id="productCheese">Cheese</div>
        <div id="productBread">Bread</div>
        <div id="productMilk">Milk</div>
        <div id="productEgg">Egg</div>
        <div id="addProduct">Add new product to list...</div>
    </div>
    <div class="list 2">
        etc...
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

和JavaScript :(我希望所有元素都带有以'product'开头的ID,但'*'对我来说不合适......)

var node = document.getElementById("product"*);

(And some unnecessary event listeners...)
Run Code Online (Sandbox Code Playgroud)

现在我的问题是:如何获得所有以'product'开头的elementID

html javascript getelementbyid

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

检查数组的所有值是否属于同一类型

有没有一种好方法可以检查数组中的所有项目是否属于同一类型?

这样做的东西:

[1, 2, 3, 4]  // true
[2, 3, 4, "foo"] // false
Run Code Online (Sandbox Code Playgroud)

javascript arrays

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