小编Mag*_*gus的帖子

承诺:那么vs那么+赶上

以下2个代码有什么区别吗?

myPromise.then(function() {
    console.log('success');
}).catch(function() {
    console.log('error');
});

myPromise.then(function() {
    console.log('success');
}, function() {
    console.log('error');
});
Run Code Online (Sandbox Code Playgroud)

我知道thencatch通过回调中的值返回返回已解决或拒绝的新promise.但我看到网络上的2个代码,我很好奇2代码之间的真正差异.

javascript promise

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

如何获得iframe内容宽度?

我的页面中有一个iframe.像这样 :

<iframe width="600px">
    <html>
        <head>
        </head>
        <body>
            <p>Some text</p>
            <img src="/foo/bar/test.png" />
        </body>
    </html>
</iframe>
Run Code Online (Sandbox Code Playgroud)

我希望能够检测iframe内容是否大于600px.我试过这个:

var iframe = $('iframe');
if (iframe.width() < iframe.contents().width()) {
    console.log('contents larger than the iframe');
}
Run Code Online (Sandbox Code Playgroud)

它适用于Firefox和Internet Explorer.但不是Chrome.在Chrome上,iframe.contents().width()是600.

我试过iframe.contents().find('body').width()但结果也是600.

如何在Chrome中检测iframe内容的实际宽度?

javascript iframe jquery tinymce width

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

es5-shim和underscore.js?

我的JavaScript项目中有es5-shim.jsunderscore.js.

ES5-shim.js只需添加一些JavaScript原生功能,如reducesome对Internet Explorer和一些旧的浏览器阵列.underscore.js添加相同的东西(但使用不同的语法)和更多的东西(对象和数组上的实用程序函数).

但是,如果es5-shim添加的函数存在,则underscore.js会使用它们.

因此,在像Firefox或Chrome这样的"最近"浏览器中,underscore.js使用浏览器的本机功能.我认为它比纯粹的javascript函数更好.但是在Internet Explorer上,underscore.js使用es5-shim函数.如果我删除es5-shim.js,则underscore.js使用自己的函数.

有什么建议吗?我应该从我的项目中删除es5-shim并仅使用underscore.js吗?或者我应该让underscore.js使用es5-shim的功能?

javascript ecmascript-5 underscore.js es5-shim

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

redbeanphp和表前缀

我在我的php项目中使用Redbeanphp(http://redbeanphp.com/).我想为我的表使用表前缀.

自版本3.0以来,Redbeanphp不支持表前缀.但我想扩展Redbeanphp以支持我的项目中的表前缀.

我不想修改redbeanphp代码.但如果没有解决方案,我会这样做.

我已经尝试替换Redbeanphp的QueryWriter,但QueryWriter类并不总是相同(它取决于我的数据库的类型).

最好的方法是什么?

php orm redbean

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

array.splice vs将值设置为null

您应该使用array.splice(i, 1);而不是array[i] = null这将保留数组中的键

来源:我应该在node.js中打扰清理数组吗?

我真的不明白这句话.为什么array[i] = null要更改数组的键?为什么array.splice(i, 1);更好?

javascript arrays

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

按绝对值对整数排序

我有一个整数列表,我想对其进行排序sort,但我想对整数的绝对值进行排序。例如7 0 5 10 -2应该给出0 -2 5 7 10(整数在我的文件中的多行中分隔)

我不认为有一个选项可以sort做到这一点,但我找不到其他命令来对行进行排序。这些-n选项按自然顺序排序,-g这不是我想要的。

我试图看一下,awk但我不知道它是否可以帮助我。

sorting bash

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

使用enable_if进行模板专业化

我正在尝试创建一个使用类型名的模板函数。我想这个专门的模板,一些基本的类型,如intlongstringdouble。对于所有其他类型,我需要为类/结构使用专门的代码,并为其他类型使用默认代码。

我当前的代码是这个:

// Declaration
template <typename T, typename enable_if<is_class<T>::value>::type = 0>
void test(T& value);

template <typename T, typename enable_if<!is_class<T>::value>::type = 0>
void test(T& value);

template <> // What am i supposed to write here ?
void test<int>(int& value);

// Definition
template <typename T, typename enable_if<is_class<T>::value>::type = 0>
void test(T& value) {
    cout << "Class/struct test" << endl;
}

template <typename T, typename enable_if<!is_class<T>::value>::type = 0>
void test(T& value) {
    cout << "Other …
Run Code Online (Sandbox Code Playgroud)

c++ templates template-specialization enable-if c++11

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

我不明白为什么我对字符串的排序会破坏一切

我有以下代码:

#include <algorithm>
#include <iostream>
#include <string>
#include <vector>
#include <unordered_map>

using namespace std;

vector<vector<string>> findAnagrams(vector<string> wordlist) {
  vector<vector<string>> result;
  unordered_map<string, vector<string>*> indexes;

  for (const string& word : wordlist) {
    string wordSorted = word;
    sort(wordSorted.begin(), wordSorted.end()); // <= This line break everything

    auto index = indexes.find(wordSorted);
    if (index == indexes.end()) {
      vector<string> vec = { word };
      result.push_back(vec);
      indexes[wordSorted] = &vec;
    } else {
      index->second->push_back(word);
    }
  }

  return result;
}

int main()
{
    vector<string> wordlist = {"eat", "tea", "tan", "ate", …
Run Code Online (Sandbox Code Playgroud)

c++ sorting string

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

在 npm preversion 脚本中获取版本

我正在尝试获取我在 npm preversion 脚本中创建的版本。

如:

{
    "scripts": {
        "preversion": "echo $version"
    }        
}
Run Code Online (Sandbox Code Playgroud)

但是我找不到要写什么来代替$version.

我想在我做的时候得到我正在创建的版本npm version <something>。例如,如果我这样做npm version 1.0.1,我想获得1.0.1. 但是如果npm version minor我在 version 时这样做1.0.0,我想得到1.1.0.

node.js npm npm-scripts

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