gpt4 book ai didi

JavaScript 破折号抛出 ReferenceError

转载 作者:行者123 更新时间:2023-11-30 07:08:43 26 4
gpt4 key购买 nike

以下 JavaScript...

if (eval('typeof admin_post_css_theme_dark-moon)=='function')) {/**/}

...触发以下错误消息...

Error: ReferenceError: moon is not defined

在这种情况下我唯一能真正区分的是其他主题的名称中没有破折号...

if (eval('typeof admin_post_css_theme_silver)=='function')) {/**/}

...不会触发任何错误。

那么“黑暗”和“月亮”之间的破折号是如何触发此错误的?


编辑:我想花点时间建议遇到这种情况的其他人应该采用驼峰式或类似的方式。一般来说,我自己使用“名称”和“基础”。 “base”是“名称”包含 URL 不友好字符的内容的 URL 友好版本。例如“我的例子”和“我的例子”或“我的例子”。

http://en.wikipedia.org/wiki/CamelCase

最佳答案

JavaScript 变量名不能包含破折号,但对象属性可以。例如,这样的事情会起作用:

var themes = {
'admin_post_css_theme_dark-moon': function () {},
'admin_post_css_theme_silver': function () {}
};

if (typeof themes['admin_post_css_theme_dark-moon'] === 'function') {
/**/
}

关于JavaScript 破折号抛出 ReferenceError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22545639/

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