如何根据变量类型做出决定?

时间:2018-04-27 11:22:06

标签: angular typescript variables

我有一个字符串格式的基本变量。我想根据变量的类型在代码中做出决定。我有以下代码。

<context:component-scan base-package="com.mycompany.path_to_initializer"/>

我已经记录了&#39; typeOfVariable&#39;得到数字。但是,代码也进入if条件。关于为什么会发生这种情况的任何想法。

2 个答案:

答案 0 :(得分:0)

如果您需要对打字稿中的类型做出决定,可以使用type guard

function padLeft(value: string, padding: string | number) {
    if (typeof padding === "number") {
        return Array(padding + 1).join(" ") + value;
    }
    if (typeof padding === "string") {
        return padding + value;
    }
    throw new Error(`Expected string or number, got '${padding}'.`);
}

答案 1 :(得分:0)

在if条件下,您已将'string'分配给typeofVariable而不是比较它。它应该是

<LinearLayout 
    android:weightSum="5">

    <ImageView
        android:layout_weight="1" />

    <ImageView
        android:layout_weight="1"/>

    <ImageView
        android:layout_weight="1"/>

    <ImageView
        android:layout_weight="2"/>

</LinearLayout>