JavaScript中的“ ”是啥意思
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript中的“ ”是啥意思相关的知识,希望对你有一定的参考价值。
表示空格。是javascript里面的转义字符!
例如:
<p> abc</p>这时候浏览器会忽略掉abc前面得空格
为了在前面有空格,通常使用<p> abc</p>
拓展资料
JavaScript[3]是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给html网页添加动态功能,比如响应用户的各种操作。它最初由网景公司(Netscape)的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。
JavaScript是Sun公司的注册商标。Ecma国际以JavaScript为基础制定了ECMAScript标准。JavaScript也可以用于其他场合,如服务器端编程。完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,字节顺序记号。
参考资料:百度百科—javascript
参考技术A在html中,“ ”表示空格
其中“&”在html用做转义。
例如:&表示“&”;<表示“<”;>表示“>”等等。
“ (注意此字母必须小写,方可空格)”表示非换行空格;表示文件路径时使用符号“/”分隔,文件名及路径描述可用双引号也可不用引号括起。
拓展资料:
超文本标记语言源程序为文本文件,其列宽可不受限制,即多个标记可写成一行,甚至整个文件可写成一行;若写成多行,浏览器一般忽略文件中的回车符(标记指定除外);对文件中的空格通常也不按源程序中的效果显示。
完整的空格可使用特殊符号(实体符)“ (注意此字母必须小写,方可空格)”表示非换行空格;表示文件路径时使用符号“/”分隔,文件名及路径描述可用双引号也可不用引号括起。
HTML 百度百科
其中“&”在html用做转义。
例如:&表示“&”;<表示“<”;>表示“>”等等。本回答被提问者和网友采纳 参考技术C  +; 叫做空格符,每一个这样的符号就空一个字符
是啥? JavaScript 中的语法是啥意思?
【中文标题】是啥? JavaScript 中的语法是啥意思?【英文标题】:What does the ?. syntax mean in JavaScript?是什么? JavaScript 中的语法是什么意思? 【发布时间】:2020-06-01 12:11:41 【问题描述】:我在一个 React 项目中遇到了类似 C# 的代码。我无法确认此语法是否正确。我没有找到任何支持这种语法的最新 ES 版本。在当前情况下,我无权执行和检查此代码。
我尝试在浏览控制台中测试此语法并遇到错误:
cart?.widgets?.items.map(widget => (
<div className="billing-details__box" key=widget.id>
<p className="m-0">widget.name</p>
<p className="my-0">widget.value $</p>
</div>
))
我对上述代码的担忧是cart?.widgets?.items
是否会引发任何错误。
【问题讨论】:
Optional chaining 这能回答你的问题吗? Does Typescript support the ?. operator? (And, what's it called?) 这段代码在一个javascript文件中。 你怎么可能修改你无法执行的代码? 【参考方案1】:我无法确认此语法是否正确。
它是正确的 TypeScript 代码,并且是正确的 JavaScript,具体取决于您运行它的引擎。Chrome (V8) 已经支持这种语法(请参阅 caniuse.com)。
您可以在此处阅读更多关于 proposal to add this syntax 未来 JS 规范的信息。
这是什么?
这种语法称为可选链接运算符,它允许您访问对象上可能存在或不存在的属性而无需检查属性是否存在,无论多深属性访问表达式是。
例如,假设我们有这样的对象:
const user =
details:
name: "SpongeBob SquarePants"
,
repo: null
;
我们想得到他们的名字,如果存在的话,还有一些属性user.repo.url
。我们可以使用可选的链接运算符来获取两者,而不必担心repo
是否是一个对象:
console.log(user.details.name) //=> "SpongeBob SquarePants"
console.log(user.repo.url) //=> undefined
它也适用于函数调用。例如,假设user.repo
有一个值,我们知道它将是一个返回字符串的函数。但是,有时,如上所述,它可能不是一个函数。如果函数存在,我们可以执行以下操作来调用该函数,但如果user.repo.url
处的值不是函数,则代码不会抛出错误:
console.log(user.repo?.url()) //=> undefined
没有可选的链接运算符?
您可以通过显式检查您正在访问的属性链中每个对象属性的真实性来实现与可选链接运算符类似的行为。
这可以通过利用 JavaScript 的 short-circuit evaluation 行为来完成,或者更明显的是使用 ternary operator。
看起来像这样:
function getItems_shortCircuit(obj)
return obj && obj.widgets && obj.widgets.items
function getItems_ternary(obj)
return obj
? obj.widgets
? obj.widgets.items
? obj.widgets.items
: null
: null
: null
let cart =
widgets: null
console.log(getItems_shortCircuit(cart)) //=> null
cart.widgets =
items: ["a", "b"]
console.log(getItems_ternary(cart)) //=> ["a", "b"]
我对上述代码的担忧是
cart?.widgets?.items
是否会引发任何错误。
这取决于项目是否使用 TypeScript,它支持开箱即用的optional chaining (?.
)。你可以在TypeScript documentation阅读它。
如果你不使用 TypeScript,那么你必须使用一些 ESNext 编译器来编译你的应用程序,比如 Babel,它有 @babel/plugin-proposal-optional-chaining
plugin。
【讨论】:
你有点错了,可选链实际上已经是正确的 JavaScript 并且在 Chrome 80+(目前是默认版本)和 Firefox 74+(目前是开发版本)中有效现在。但是,如果您针对其他浏览器,您仍然需要进行转译。 caniuse.com/#search=optional%20chaining 是的,我很高兴看到它在本月初在 Chrome 中上线。很好的答案! 我猜对于其他浏览器,babel 会将此代码转换为支持的 javascript 代码 @VirajSingh 这是正确的——只要你使用答案中链接的插件,一旦它被 Babel 编译,你就可以在任何地方使用这个语法。 如果您不知道,nullish coalescing operator??
现在也在 Chome 80+ 和常规 Firefox (72+) 中使用!现在我们只需要 Safari 和 Edge 即可使用该程序!【参考方案2】:
可选链是JS的新特性。
基本上是一样的:
cart && cart.widgets && cart.widgets.items.map(widget => (
<div className="billing-details__box" key=widget.id>
<p className="m-0">widget.name</p>
<p className="my-0">widget.value $</p>
</div>
))
欲了解更多详情,请务必访问V8 guide。
【讨论】:
【参考方案3】:它将由 Babel 编译并且可以工作。 https://babeljs.io/docs/en/babel-plugin-proposal-optional-chaining
【讨论】:
【参考方案4】:这可能是来自 Typescript 的 optional chaining。
【讨论】:
... 和 JavaScript! caniuse.com/#search=optional%20chaining【参考方案5】:它是可选链接,如果您使用 polyfill,它不会导致任何错误。 “?。” - 默认还不支持
【讨论】:
本月起在 Chrome (80+) 和 Firefox Developer Edition (74+) 中支持! caniuse.com/#search=optional%20chaining以上是关于JavaScript中的“ ”是啥意思的主要内容,如果未能解决你的问题,请参考以下文章