Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JSON.parse无法将其转换为对象_Javascript_Angularjs - Fatal编程技术网

Javascript JSON.parse无法将其转换为对象

Javascript JSON.parse无法将其转换为对象,javascript,angularjs,Javascript,Angularjs,我在我的dom中得到了一个类似这样的ng类,我如何在这里访问twitter和yahoo属性 ng-class="{twitter:2 < id , yahoo :2 >id}" ng class=“{twitter:2id}” typeof ng class是object,但当我尝试像elem[“ng class”][“twitter”]那样访问它时,它不起作用 执行JSON.parse(obj)时也会失败 未捕获的语法错误:JSON中位置1处的意外标记t 如果2id为true,

我在我的dom中得到了一个类似这样的
ng类
,我如何在这里访问
twitter
yahoo
属性

ng-class="{twitter:2 < id , yahoo :2 >id}"
ng class=“{twitter:2id}”
typeof ng class
object
,但当我尝试像
elem[“ng class”][“twitter”]
那样访问它时,它不起作用

执行
JSON.parse(obj)
时也会失败

未捕获的语法错误:JSON中位置1处的意外标记t


如果
2
为true,元素将拥有class
twitter
,如果
2>id
为true,元素将拥有class
yahoo
(如果
2>id
为true,元素将没有这两个条件)


因为它不是一个对象,所以没有可访问的属性。

你所拥有的不是一个对象,而是一对条件:如果
2
为真,元素将拥有类
twitter
,如果
2
为真,元素将拥有类
yahoo
(如果
id==2
,则两者都没有)


因为它不是一个对象,所以没有可访问的属性。

请添加引号和
()
以获取如下对象的值:

ng-class="{'twitter': (2 < id), 'yahoo': (2 >id)}"
ng class=“{'twitter':(2id)}”

通过此更新,您不会再次看到未捕获的SyntaxError!

请为以下对象的值添加引号和
()

ng-class="{'twitter': (2 < id), 'yahoo': (2 >id)}"
ng class=“{'twitter':(2id)}”

通过此更新,您不会再次看到未捕获的SyntaxError!

如您在本文中所看到的那样正常工作

当按角度解释时,ngClass将类值指定给
class
元素属性

当我试图像
elem[“ng class”][“twitter”]
那样访问它时,它不起作用


如果您想检查DOM元素是否有“twitter”类,只需查询DOM即可。

正如您在本文中看到的那样工作

当按角度解释时,ngClass将类值指定给
class
元素属性

当我试图像
elem[“ng class”][“twitter”]
那样访问它时,它不起作用



如果要检查DOM元素是否有“twitter”类只需通过查询DOM来实现它。

好吧,它是非常无效的JSON,所以
JSON也就不足为奇了。parse
不会解析它。。@t.J.Crowder:我如何访问这里的twitter属性?可能还有另一种方法可以实现您想要的功能。如果您解释为什么要在您的应用程序中访问
twitter
yahoo
条件类,我们可能会给你一些更好的选择。解释“动态模板”.Angular做得很好,我从来没有尝试过访问
ng类
。@Damon:这是一个表达式。Angular的
ngClass
指令理解该语法,如果表达式为真,将给元素class
twitter
,如果表达式为假,则不会给元素。好吧,它是非常无效的JSON,所以
JSON也就不足为奇了。parse
不会解析它。…@t.J.Crowder:我如何访问这里的twitter属性?可能还有另一种方法可以实现您的目的。如果您解释为什么要在条件类中访问
twitter
yahoo
,我们可能会给您一些更好的选择。解释一下“动态模板”".Angular做得很好,我从来没有尝试过访问
ng类
。@Damon:这是一个表达式。Angular的
ngClass
指令理解该语法,如果表达式为真,就会给元素class
twitter
。只有代码的答案没有帮助l、 解释你做了什么,如何/为什么它解决了问题。而且,这与问题或问题无关。
()
完全没有必要,什么也不改变。纯代码回答没有帮助。解释你做了什么,如何/为什么解决了问题。此外,这与问题或问题无关。
()
完全没有必要,什么也不改变。typeof ng class=“{twitter:2id}”给我一个对象。。有没有办法访问这里的twitter属性。@Shane:我不知道你所说的ng类的
typeof
是什么意思。我无法想象在任何上下文中你可以编写它并使其成为有效的代码。也许问题中的一个会有所帮助。typeof“{twitter:2id}”返回一个对象而不是字符串…这是一个小提琴,我试图用0,1,2,3,4替换这个{{ind}}…所以on@Shane:您正在访问的元素上有一个属性。您可以通过
getAttribute
获取该属性的文本,例如
val.getAttribute(“ng类”)
:您可以使用
setAttribute
更新属性值,但我非常怀疑这是正确的方法,除非Angular尚未在相关元素上运行(在这种情况下,应该可以)。如果Angular已经在相关元素上运行过,那么它可能已经尝试使用
ng class
属性,其中包含
{ind}
。typeof ng class=“{twitter:2id}”“给我一个对象。。有没有办法在这里访问twitter属性。@Shane:我不知道你所说的
typeof ng class
是什么意思。我无法想象你能在任何上下文中编写它并使其成为有效的代码。也许问题中的一个会有所帮助。typeof”{twitter:2id}”返回一个对象而不是字符串…这是一个小提琴,我试图用0,1,2,3,4替换这个{{ind}}…所以on@Shane:您正在访问的元素上有一个属性。您可以通过
getAttribute
获取该属性的文本,例如
val.getAttribute(“ng cla