如何在angular4中按数组中的数字?

时间:2018-03-19 18:14:20

标签: arrays angular

当我点击按钮时,我试图在数组中推送一个数字,但它似乎不起作用。

在我的app.component.html中: -

void test_func(int a, int b, int *c) {
    a ^= 5;
    *c = a + b;
    b <<= 4;
}

int main() {
    int a = 3, b = 0x011, c = 0;
    test_func(a, b, &c);
    a = (b > c) ? b : c;
    printf ("%d %d %d",a,b,c);
}

在我的app.component.ts中: -

Main function
Function call is made where a = 3 , b = 17(in int), c=0
and values are passed to the test_func 
Functions runs:
a = 3 ^ 5 = 0110 or 6 ; 
c = 17+ 6 = 10100 or 23;
b = 17x2^4 = 272 ; (by the formula of bitwise left shift operator)
Return to the main function
b is definitely greater than c so a returns 272 ;

您可以在Plunker中查看我的代码:

http://plnkr.co/edit/jM3NDu7V3AjzOWeuCoDi?p=preview

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

之前我遇到过这个问题,结果发现它与Angular中的变化检测有关。

我的解决方案是做一个浅拷贝而不是推。但是* ngFor也可以解决这个问题。

this.dayNum = [...this.dayNum, 9];