JavaScript将单斜杠替换为双斜杠?

时间:2018-06-21 10:26:58

标签: javascript string ionic-framework ionic3 str-replace

我目前有以下字符串

var docPath="\\\\Server\Users\Files\Order\file1.pdf"

在哪里需要在ionic 3移动应用程序中将单个反斜杠替换为两个反斜杠

var docPath="\\\\Server\\Users\\Files\\Order\\file1.pdf"

这是我到目前为止尝试过的

docPath=docPath.replace('\\', "\\\\")

什么都不会改变。

2 个答案:

答案 0 :(得分:1)

当JavaScript解析器解析JavaScript源代码时,斜杠字符被解释为转义序列的开始。

当您尝试将替换调用应用于字符串时,斜杠已经转换为它们的转义序列所表示的含义。

您来不及了!


您必须修复源代码。 JavaScript解析器销毁数据后,您将无法恢复数据。

service type as LoadBalancer

答案 1 :(得分:0)

我认为您的错误已经在

<?php
declare(strict_types=1);

final class Order
{
    /** @var array|OrderPosition[] */
    private $orderPositions;

    public static function fromArray($orderData)
    {
        assert(isset($orderData['orderId']));
        assert(isset($orderData['positions']));

        return
            new self(
                $orderData['orderId'],
                array_map(
                    function (array $positionData): OrderPosition {
                        // I would like to put the "future self (Order)" alread here
                        return OrderPosition::fromArray($positionData);
                    },
                    $orderData['positions']
                )
            );
    }

    private function __construct(string $orderId, array $orderPositions)
    {
        $this->orderPositions = $orderPositions;
        // what I want to avoid is:
        array_walk($orderPositions, function (OrderPosition $position) {
            $position->defineOwningOrder($this);
        });
    }
}

final class OrderPosition
{
    /** @var Order */
    private $owningOrder;

    public static function fromArray($positionData /* + as mentioned I'd like to put the "calling" Order here already...? */)
    {
        return
            new self(
                $positionData['productId'],
                $positionData['amount']
            );
    }

    private function __construct(string $productId, int $amount)
    {
        // …
    }

    /** @internal */
    public function defineOwningOrder(Order $order)
    {
        $this->owningOrder = $order;
    }
}

我认为

var docPath="\\\\Server\Users\Files\Order\file1.pdf". 

会是正确的