小编Sca*_*ola的帖子

使用函数按字母顺序对字符串进行排序

想象一下,你被赋予了一个字符串,你必须使用函数按字母顺序对该字符串进行排序.例:

sortAlphabets( 'drpoklj' ); //=> returns 'djklopr'
Run Code Online (Sandbox Code Playgroud)

最好的方法是什么?

javascript sorting

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

如果给定参数是方形数,JavaScript中测试的最佳方法是什么?

我创建了一个函数,用于测试给定参数是否为方数.

在这里阅读方形数字:https://en.wikipedia.org/?title = Square_number

如果数字是平方数,则返回true,否则返回false.负数也会返回错误.

例子:

isSquare(-12) // => false
isSquare( 5) // => false
isSquare( 9) // => true
isSquare(25) // => true
isSquare(27) // => false
Run Code Online (Sandbox Code Playgroud)

现在,我正在使用这种方法:http://jsfiddle.net/marcusdei/ujtc82dq/5/

但是,是否有更短的更简洁的方式来完成工作?

javascript numbers perfect-square

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

正则表达式过滤掉某些字符

如果您提供了一个随机字符串,那么正则表达式字符串会是什么样子:

"u23ntfb23nnfj3mimowmndnwm8"

我想过滤出某些字符,如2,b,j,d,g,k和8?

所以在这种情况下,函数会返回'2bjd8'.

互联网上有很多文献,但没有直接到达关键点.创建正则表达式来过滤字符串应该不是很难吗?

PS.这不是家庭作业,但我很擅长愚蠢的朋克

javascript regex

7
推荐指数
2
解决办法
9046
查看次数

确定给定数字是否为2的幂的最佳方法是什么?

如果n是2的幂,我需要返回true,否则返回false.它应该是这样的:

function PowerOfTwo(n){
  //code here
}
Run Code Online (Sandbox Code Playgroud)

这是我目前的方式:

function isPowerOfTwo(n){
  var x = Math.pow(2, Math.round(Math.log(n) / Math.log(2)));
  return x;
}
Run Code Online (Sandbox Code Playgroud)

有没有更有效的方法?

javascript

4
推荐指数
2
解决办法
3532
查看次数

Chrome Automation Extension在尝试运行量角器测试时崩溃了

我正在获得Protractor的经验,并使用示例测试来了解它是如何工作的.测试位于xampp/htdocs/my-dev/test-automation-playground/poc-basic-integration-flow/node_modules/protractor/

在那里我们有一个conf.js和一个example_spec.js.要运行测试,我们使用git bash输入量角器文件夹,然后输入protractor conf.js.

当我尝试运行Protractor提供的示例测试时,我的浏览器打开,我收到以下错误:Chrome Automation Extension has crashed....见下文:

在此输入图像描述

这就是它在浏览器中的样子:

在此输入图像描述

我正在研究Chrome扩展程序,并且没有此类扩展程序.可能导致此问题的原因是什么?

google-chrome protractor

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

放入for循环时,排序函数的行为会有所不同

我有两种排序函数,用于排序数字数组并返回前两个索引的总和,但是当这些函数在for循环中运行时,第二个函数不能正常工作.

这是第一个:

function solution(numbers) {
    numbers.sort(function (a, b) { 
        return a - b;
    }); 
    return numbers[0] + numbers[1];
}
Run Code Online (Sandbox Code Playgroud)

这是第二个:

function sumTwoSmallestNumbers(numbers) {
    var findSmallest = function(startsAt){
        var first = startsAt;
        for (var i =0; i<=numbers.length-1; i++){
            if(first >= numbers[i]){
                first = numbers[i];
            }
        }
        return first;
    }
    var smallest = findSmallest(numbers[0]);
    var index = numbers.indexOf(smallest);
    numbers.splice(index,1);
    var secondSmallest = findSmallest(numbers[0]);
    return smallest+secondSmallest
};
Run Code Online (Sandbox Code Playgroud)

这是for循环:

for (let i = 0; i < 100; i++) {
    var randArr = [Test.randomNumber()+1000,Test.randomNumber(),Test.randomNumber(),Test.randomNumber(),Test.randomNumber()];
    var …
Run Code Online (Sandbox Code Playgroud)

javascript arrays sorting

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

在处理订单之前检查 WooCommerce address_field_1 是否包含门牌号

有时,在 WooCommerce 中,客户需要在一个字段中填写街道名称和门牌号。

在这种情况下,我们希望在处理订单之前验证 billing_address_1 WooCommerce 结账字段以检查它是否包含数字。我们尝试了多种方法来完成这项工作,但没有任何运气。

这个标准的 WooCommerce 方法不起作用:

add_action('woocommerce_checkout_process', 'custom_checkout_field_check');

    function custom_checkout_field_check() {
        // Check if set, if its not set add an error.
        if ( $_POST['billing_address_1'] && strpbrk($_POST['billing_address_1'], '1234567890') )
            wc_add_notice( __( 'Het adresveld moet minimaal een huisnummer bevatten' ), 'error' );
    }
Run Code Online (Sandbox Code Playgroud)

这些在结帐页面上返回 bool(false):

var_dump($_POST['billing_address_1'] == true);
var_dump($_POST['billing_address_2'] == true);
var_dump($_POST['billing_postcode'] == true);
var_dump($_POST['billing_email'] == true);
Run Code Online (Sandbox Code Playgroud)

这种前端解决方法不起作用。

document.querySelector("#place_order").addEventListener("click", validateAddressField);

function validateAddressField () {
    console.log('Okay dan!');
}
Run Code Online (Sandbox Code Playgroud)

我还可以尝试哪些方法来确保在处理订单之前进行验证?

php wordpress checkout woocommerce hook-woocommerce

3
推荐指数
2
解决办法
2811
查看次数

返回一串带空格的数字中的最高和最低数字

假设我有一串由空格分隔的数字,我想返回最高和最低的数字。使用函数在 JS 中如何最好地完成?例子:

highestAndLowest("1 2 3 4 5"); // return "5 1"
Run Code Online (Sandbox Code Playgroud)

我希望这两个数字都以字符串形式返回。最小的数字先跟一个空格,然后是最大的数字。

这是我到目前为止所拥有的:

function myFunction(str) {
    var tst = str.split(" ");
    return tst.max();
}
Run Code Online (Sandbox Code Playgroud)

javascript numbers

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

可以通过两种方式调用的单个函数

我正在尝试编写一个可以通过两种方式调用的函数:

sum(3,5); //8
Run Code Online (Sandbox Code Playgroud)

要么

sum(3)(5); //8
Run Code Online (Sandbox Code Playgroud)

这显然不够:

function sum (a,b){
  return a + b;
}
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止的地方:

http://jsfiddle.net/marcusdei/a8tds42d/1/

javascript

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

角度网址路由不适用于直接访问

我已经使用AngularJS在项目上设置了路由,以在单击菜单按钮时加载其他模板。该模板基于浏览器URL。唯一的问题是,直接访问URL时不会加载模板。相反,它将加载空白页(找不到对象)。如何克服呢?

因此,该项目位于文件夹/ p​​roject4中的本地驱动器上。共有三个菜单按钮,其中两个链接到:

project4/aboutproject4/contact

这是HTML部分:

<html>
<head>
    <base href="/ordina/angular/project4/">
    <link href=
    "//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel=
    "stylesheet">
    <link href=
    "//netdna.bootstrapcdn.com/font-awesome/4.0.0/css/font-awesome.css" rel=
    "stylesheet">
    <script src=
    "https://ajax.googleapis.com/ajax/libs/angularjs/1.2.25/angular.min.js"></script>
    <script src=
    "//ajax.googleapis.com/ajax/libs/angularjs/1.2.25/angular-route.js"></script>
    <script src="script.js"></script>

    <title></title>
</head>

<body>
    <header>
        <nav class="navbar navbar-default">
            <div class="container">
                <div class="navbar-header">
                    <a class="navbar-brand" href="/">Angular Routing
                    Example</a>
                </div>

                <ul class="nav navbar-nav navbar-right">
                    <li>
                        <a href=""><i class="fa fa-home"></i> Home</a>
                    </li>

                    <li>
                        <a href="about"><i class="fa fa-shield"></i> About</a>
                    </li>

                    <li>
                        <a href="contact"><i class="fa fa-comment"></i>
                        Contact</a>
                    </li>
                </ul>
            </div>
        </nav>
    </header>

    <div id="main">
        <div>
            <p>This text …
Run Code Online (Sandbox Code Playgroud)

javascript url-routing angularjs

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

检查所有返回的数组是否包含值false

console.log(allStatuses);
Run Code Online (Sandbox Code Playgroud)

此变量返回两个数组:

[true, false, false, false, false]

[true, false, false, true, false]
Run Code Online (Sandbox Code Playgroud)

有时会返回更多带有true/false值的数组.

我想检查所有返回的数组是否包含false,如果是,请执行某些操作.

完成这项工作的最佳方法是什么?

这是负责的代码:

angular.forEach($scope.prefAccount, function(account){
     if (typeof account === 'object') {
          var allStatuses = [];  
          angular.forEach(account, function(alertStatus){
               return allStatuses.push(alertStatus.enabled);
          })
          console.log(allStatuses);
     }                    
});
Run Code Online (Sandbox Code Playgroud)

javascript arrays

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

将属性添加到数组中的每个对象

我正在尝试向数组中的每个对象添加一个属性:

var capitals = [{
    country: "What's the capital of Ecuador?",
    choices: ["Quito", "Caracas", "Panama", "Loja"],
    corAnswer: 0
}, {
    country: "What is the capital of China?",
    choices: ["Shanghai", "Beijing", "Ghangzou", "Hong Kong"],
    corAnswer: 0
}];
Run Code Online (Sandbox Code Playgroud)

应该成为:

var capitals = [{
        country: "What's the capital of Ecuador?",
        choices: ["Quito", "Caracas", "Panama", "Loja"],
        corAnswer: 0,
        global: true
    }, {
        country: "What is the capital of China?",
        choices: ["Shanghai", "Beijing", "Ghangzou", "Hong Kong"],
        corAnswer: 0,
        global: true
    }];
Run Code Online (Sandbox Code Playgroud)

该数组可以包含多个对象.我需要什么样的功能?

javascript arrays object

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