小编hev*_*ev1的帖子

如何在JavaScript中获取此子html元素?

我有一个看起来像这样的iframe:

<iframe id="iframe2" ...>
    #document
        <html>...</html>
</iframe>
Run Code Online (Sandbox Code Playgroud)

我正在尝试iframe使用html标签获取项目.
在JavaScript中,当我这样做时:

document.getElementByID("iframe2")
Run Code Online (Sandbox Code Playgroud)

这会返回正确的iframe.

但是,当我这样做时:

document.getElementByID("iframe2").childNodes
Run Code Online (Sandbox Code Playgroud)

返回值是[].

document.getElementByID("iframe2").getElementsByTagName("#document")document.getElementByID("iframe2").getElementsByTagName("html")返回[].

我如何访问该html标签?
另外,那个#document标签叫什么?

html javascript

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

插入具有完整性和跨域属性问题的链接标签

尝试使用 Javascript 插入 css 文档,但是我收到错误消息,提示必须启用 CORS。有办法处理吗?

这是代码:

var link = document.createElement('link');
link.rel = 'stylesheet';
link.href = 'https://use.fontawesome.com/releases/v5.2.0/css/all.css';
link.integrity = 'sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ';
link.crossorigin = 'anonymous';
document.head.appendChild(link);
Run Code Online (Sandbox Code Playgroud)

html javascript tags cors

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

如何解构这个数组

我如何解构widthheight如果它们之前已经声明过?

function test() {
  let height
  let width

  const viewBox = '0 0 24 24'
  const sizeArr = viewBox.split(' ')

  // ESLint is telling me to destructure these and I don't know how
  width = sizeArr[2]
  height = sizeArr[3]
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays ecmascript-6 destructure

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

如何将整数数组转换为二进制?

for (int i = 0; i < n; i++) {
    arr[i] = scanner.nextInt();
}
String[] bin = new String[n];
for (int i = 0; i < n; i++) {
    bin[i] = Integer.toBinaryString(arr[i]);
}
Run Code Online (Sandbox Code Playgroud)

上面的代码将整个整数数组转换为Strings数组(包含输入字符串的二进制格式),但有一个警告。

例如:
如果输入数组是:2 3 7 10
二进制字符串数组将是:10
11
111
1010

但我希望输出数组如下所示:
0010
0011
0111
1010

#2
如果输入数组是:2 10 20
二进制字符串数组将是:
10
1010
10100

但我希望输出数组如下所示:
00010
01010
10100

java string binary integer binary-string

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

带有三元运算符的 NullPointerException

为什么这有效:

String a = null;
String b = a != null && a.equals("Nan") ? "Nan" : a;
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)

但这会产生 NPE:

Double value = null;
Double v = value != null && value.isNaN() ? 0.0 : value;
System.out.println(v);
Run Code Online (Sandbox Code Playgroud)

将其重写为:

Double value = null;
Double v;
if (value != null && value.isNaN()) {
    v = 0.0;
} else {
    v = value;
}
Run Code Online (Sandbox Code Playgroud)

当然可以按预期工作。但是为什么我在使用时使用三元/条件运算符得到NPE Double,而在使用时没有NPE String?我缺少什么?

java comparison

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

4
推荐指数
2
解决办法
74
查看次数

无法用另一个对象数组更新一个对象数组

我有两个不同的对象数组,storedArray存储在我的文件系统中,并由inputArray用户输入的 update 组成storedArray。每个数组的最小长度为 1,最大数量没有上限。而且它们的长度不一定必须相同。所以我想要的是循环每个数组并且:

  1. 如果来自inputArray匹配的名称与storedArray名称和年龄相同,则在 中不执行任何操作,storedArray但将该对象保留在 中storedArray。(例如约翰)。
  2. 如果 name from与 nameinputArray匹配storedArray且年龄不同,则仅更新 中旧对象中的年龄值storedArray。(例如简)。
  3. 如果内部有一个新对象,inputArray其名称与任何名称都不匹配storedArray,则将新对象推送到storedArray. (例如莫里斯)。
  4. 必须删除与storedArray不匹配的其他对象inputArray。(例如乔安娜、吉姆)。

更新这个

const storedArray = [
        {"name": "John", "age": 25, "courses": 5},
        {"name": "Jane", "age": 21, "courses": 3},
        {"name": "Joanna", "age": 19, "courses": 2},
        {"name": "Jim", "age": 20, "courses": 4},
];
Run Code Online (Sandbox Code Playgroud)

由此

const inputArray = [ …
Run Code Online (Sandbox Code Playgroud)

javascript

4
推荐指数
2
解决办法
6121
查看次数

多次循环数组

colors给定未知长度,如何按顺序重复数组items

const items = [1, 2, ...n]
const colors = ['blue', 'green', 'red']

// return ['blue', 'green', 'red', 'blue', 'green'] where items.length = 5

Run Code Online (Sandbox Code Playgroud)

javascript

4
推荐指数
1
解决办法
2054
查看次数

Javascript 和 3 参数过滤器

我正在尝试理解filterJavascript 中的 3 参数函数。这段代码是做什么的?(我目前正在重构系统中现有的代码。)

docs = _.cloneDeep(docs.filter((v, i, a) => a.findIndex(t => (t.documentNumber === v.documentNumber)) === i));
Run Code Online (Sandbox Code Playgroud)

javascript arrays

4
推荐指数
1
解决办法
861
查看次数

修剪除空格之外的其他字符?(trim() 用于可变字符)

有没有一种简单的方法可以替换字符串开头和结尾的字符,但不能替换中间的字符?我需要修剪破折号。我知道trim()存在,但它只会修剪空白。

这是我的用例:

输入:

university-education
-test
football-coach
wine-
Run Code Online (Sandbox Code Playgroud)

输出:

university-education
test
football-coach
wine
Run Code Online (Sandbox Code Playgroud)

javascript trim node.js ecmascript-6

4
推荐指数
1
解决办法
2420
查看次数