相关疑难解决方法(0)

Javascript中是否有逻辑运算符

我想知道Javascript中是否有"&"逻辑运算符.我尝试在Firebug(Firefox)中运行1&0和1 && 0,并且两者都返回0.

有人告诉我C#接受&和double &&,double会更有效率,因为它会在遇到false时立即退出比较循环,但我无法找到Javascript的任何信息.

有任何想法吗?

javascript

6
推荐指数
2
解决办法
5663
查看次数

在哪里可以获取有关JavaScript函数的对象参数语法的信息?

如果我想调用这样的函数:

moo({ a: 4 });
Run Code Online (Sandbox Code Playgroud)

通常,我必须这样表达我的函数定义:

function moo(myArgObj) {
    print(myArgObj.a);
}
Run Code Online (Sandbox Code Playgroud)

但是,这种出色的语法在spidermonkey中对于定义函数完全有效:

function moo({ a, b, c }) { // valid syntax!
    print(a); // prints 4
}
Run Code Online (Sandbox Code Playgroud)

这是什么功能?

javascript syntax destructuring ecmascript-6

6
推荐指数
1
解决办法
671
查看次数

为什么false =="false"是假的?

我还在学习javaScript的基础知识,我不明白为什么会这样.

类型强制false == "false"将转换为:

false == false //true
Run Code Online (Sandbox Code Playgroud)

要么

"false" == "false" //true
Run Code Online (Sandbox Code Playgroud)

那么,为什么false == "false"是假的?

javascript

6
推荐指数
2
解决办法
3684
查看次数

如何解决 Google Apps Script 开发中的常见错误

问答目前是讨论的主题,请参与。目前的计划是在可能的情况下拆分为问答环节。A&A 的答案是社区维基,当状态得到解决时,问题应该成为一个问题。


前言

本问答力求成为Google Apps Script语言开发过程中遇到的常见错误的集合和参考对象,以期提高标签的长期可维护性。

在其他语言和通用标签中也有几个类似的成功经历(参见c++androidphpphp 再次),这一个也紧随其后。


它为什么存在?

新老开发人员提出的关于开发和生产过程中遇到的错误的含义和解决方案的问题数量很多,这些问题可以有效地简化为一个单一的答案。在撰写本文时,即使仅通过语言标签运行查询也会产生:

  • “找不到方法” 8页
  • “无法读取属性” 9 页
  • “在这种情况下无法调用 ...” 5 页
  • “您没有权限” 11页

由于需要考虑细微差别和通常措辞不当的标题,对于志愿者来说,链接到最相关的副本既困难又耗时。


它由什么组成?

此问答包含的条目旨在提供有关如何:

  • 解析错误信息结构
  • 了解错误意味着什么
  • 始终如一地重现(如适用)
  • 解决问题
  • 提供规范问答的链接(在可能的情况下)

目录

为了帮助您浏览不断增长的参考,请使用下面的目录:

  1. 一般错误
  2. 特定于服务的错误

这不是什么?

问答的范围仅限于普通(非平凡)。这不是:

  • 一个包罗万象的指南或“最佳实践”集合
  • 一般 ECMAScript 错误的参考
  • 气体文件
  • 资源列表(我们有一个标签维基

要添加什么?

添加条目时,请考虑以下事项:

  • 错误是否足够常见(参见“为什么”部分的示例)?
  • 该解决方案能否简明扼要地描述并适用于大多数情况?

debugging google-api google-apps-script google-apps-script-addon

6
推荐指数
1
解决办法
4614
查看次数

参数后的问号,如 obj.val?.prop

我在代码条件行中遇到了这样的情况someObject.arrParam?.length。那是什么语法?这个问号的东西怎么称呼?我知道一个可选运算符,用于函数中的参数。这是它的用法的变体吗?以前从未见过面。

javascript

6
推荐指数
1
解决办法
8098
查看次数

空合并运算符 (??) 与 ECMAScript 中的逻辑 OR 运算符 (||) 有何不同?

ES2020 introduced the nullish coalescing operator (??) which returns the right operand if the left operand is null or undefined. This functionality is similar to the logical OR operator (||). For example, the below expressions return the same results.

const a = undefined
const b = "B"

const orOperator = a || b
const nullishOperator = a ?? b
  
console.log({ orOperator, nullishOperator })
Run Code Online (Sandbox Code Playgroud)

result:

{
    orOperator:"B",
    nullishOperator:"B"
}
Run Code Online (Sandbox Code Playgroud)

So how is the nullish operator different …

javascript logical-or ecmascript-2020 nullish-coalescing

6
推荐指数
1
解决办法
959
查看次数

<boolean expression> && statement()与if(<boolean expression>)语句()相同吗?

两个相同吗?

假设你有:

var x = true;
Run Code Online (Sandbox Code Playgroud)

然后你有一个:

x && doSomething();
Run Code Online (Sandbox Code Playgroud)

要么

if(x) doSomething();
Run Code Online (Sandbox Code Playgroud)

这两种语法之间有什么不同吗?我偶然发现了一点糖吗?

javascript syntax if-statement boolean syntactic-sugar

5
推荐指数
2
解决办法
1147
查看次数

在Javascript中做什么?

我正在学习VueJs,在这个沙箱中https://codesandbox.io/s/o29j95wx9它有像这样的行

<script>
export default {
  props: {
    value: {
      type: String,
      default: '',
    }
  },
  computed: {
    listeners () {
      return {
        // Pass all component listeners directly to input
        ...this.$listeners,
        // Override input listener to work with v-model
        input: event => this.$emit('input', event.target.value)
      }
    }
  }
}
</script>
Run Code Online (Sandbox Code Playgroud)

什么是......this.$listeners,做什么?我尝试搜索它,但每个搜索引擎都会过滤掉该查询.我不知道它叫什么.

我也看到它在这样的vuex中使用过

computed: {
   ...mapGetters({
      currentData: 'viewerGetCurrentDocument',
      folders: 'viewerGetFoldersList'
   }),
Run Code Online (Sandbox Code Playgroud)

javascript

5
推荐指数
1
解决办法
101
查看次数

Javascript数字分隔符?

某些语言,如 Java 和 C++,允许您使用数字分隔符。为了提高可读性,您可以对千分之位数进行分组:

1_000_000_000
Run Code Online (Sandbox Code Playgroud)

但不仅是每千人;你真的可以在任何地方使用它。假设你有一些以厘米为单位的价值。像这样将它分开,可以让人类更容易将其作为米来阅读:

10_00  // 10 meters
Run Code Online (Sandbox Code Playgroud)

如果我们也可以在 Javascript 中使用它,那不是很好吗?

javascript

5
推荐指数
1
解决办法
2699
查看次数

为什么| 和 || 类似于 Javascript 中的分号?

我在 Chrome 上的控制台上测试了一些东西,然后我运行了这段代码:

alert() | window.confirm();
alert() || window.confirm();
Run Code Online (Sandbox Code Playgroud)

我的问题是在一行中同时运行 alert 和 confirm 方法而不使用分号。事实证明,两者 | 和 || 有效,我无法想象它为什么有效,首先是因为|| 表示一个 OR 运算符,它应该运行其中一个,而不是两者,其次| 我不知道它是什么。有人可以解释发生了什么,还有什么应该起作用而不是; ?

javascript

5
推荐指数
1
解决办法
86
查看次数