gpt4 book ai didi

javascript - a.style.display : Value assigned to primitive will be lost

转载 作者:可可西里 更新时间:2023-11-01 02:48:48 29 4
gpt4 key购买 nike

考虑这个 JavaScript 片段:

var a = document.createElement("a");
a.style.display = "none";

IntelliJ IDEA 2016.2 突出显示 a.style.display 并给出以下提示:

Value assigned to primitive will be lost

Checks for improper usage of wrappers for JavaScript primitive types. Also, warning will be produced when property of primitive type is modified, as assigned value will be lost

IntelliJ IDEA hint

CSSStyleDeclaration不是基本类型,因此对 display 的赋值不会丢失。

String是包装器类型。我如何(不正确地)使用它?

该代码似乎在 Chrome 和 Edge 中运行良好。怎么回事?

最佳答案

您的代码没有任何不当之处,IntelliJ 的类型推断有点困惑(JavaScript 的这一方面尤其令人困惑)。

它的 linter 看到一个字符串并假设你会尝试这样的事情:

var primitive = "september";
primitive.vowels = 3;

primitive.vowels;
// => undefined

这会导致“丢失”值(value)。

要进一步了解 JavaScript 的这个奇怪部分,我推荐 Angus Croll 的优秀深度文章 here .

关于javascript - a.style.display : Value assigned to primitive will be lost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38463552/

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