gpt4 book ai didi

javascript - 奇怪的 ng-model 行为(ng-model 映射到数组元素)

转载 作者:行者123 更新时间:2023-12-03 08:51:18 24 4
gpt4 key购买 nike

当您有这样的 ng-model 声明时,正确的行为应该是什么?

data-ng-model="elements[0]"

它的工作方式是,如果 elements 已在范围中定义为数组,则它会按照我预期的方式工作,分配数组的第一个元素。

但是如果 elements 没有声明,它会分配这个值:

elements = {0:'anyvalue'}

(如果我写了data-ng-model="elements['0']",这就有意义了)

在这种情况下:

elements[0]='anyvalue';
elements['0']='anyvalue';

并且我无法使用“点”表示法(elements.0elements.'0')读取属性的值。

所以它看起来是正确的,但有点奇怪。

这种行为是否正确,或者在未定义作用域变量时应该实例化一个数组?

最佳答案

数组只是一种特殊类型的对象。如果您在调试器中查看数组,所有值都会列为带有数字键的属性,就像您显示的那样。如果您不将对象初始化为数组,它仍然会以相同的方式访问该对象,这仅意味着您现在拥有一个带有数字键的对象,并且没有任何来自 Array 原型(prototype)的有用函数。

关于javascript - 奇怪的 ng-model 行为(ng-model 映射到数组元素),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32660680/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com