私は就職の面接のためにコーディングのチャレンジを与えられました。私がどこに間違っていたかを助けてくれるよい行為者がいるかどうか確認したいと思います。私は誰にも同じように感じるかどうかを知りたいので、尋ねられていた一般的な質問を理解できませんでした。これは全体の質問です:HTMLのこのマージ配列を理解したいと思います
簡易版の要素を表現するために配列を用いて表現することができます:タグ名•
[tagName, child1, child2, ...]
は常に配列の最初のエントリで、文字列です。 •子は配列または文字列のいずれかです。 •子が文字列の場合、HTMLマークアップではなくプレーンテキストとして扱われます。 •子が配列の場合、それはネストされた要素として扱われます。 •属性やコメントなどの要素やテキストだけはサポートされていません。 配列をとり、HTML文字列を生成するJavaScript関数を実装します。 •空のタグは自動的に閉じるべきです。 •連続したテキストノードは、完成した出力にマージされます。 •ライブラリ、ビルドプロセス、またはトランスパイライザはありません。 例:
<html>
<head>
<title>title here</title>
<meta charset="UTF-8">
<meta name="description" content="">
<meta name="keywords" content="">
<style>
div{
background: yellow;
}
</style>
</head>
<body>
<section>
<h1>I am a <br>header</h1>
<p id="demo"></p>
<div></div>
</section>
<script>
document.getElementById("demo").innerHTML =
"The title of this document is: " + document.title;
</script>
<script>
VARラッパー=のdocument.createElement( "DIV");:
['div'] => '<div/>'
['h1', 'Text'] => '<h1>Text</h1>'
['span', 'More', 'Text'] => '<span>MoreText</span>'
['a', ['b', 'More'], ' Text'] => '<a><b>More</b> Text</a>'
['p', '<b>Text</b>'] => '<p><b>Text</b></p>'
私の答えは以下の通りでした
wrapper.appendChild(document.createTextNode("Part 1 "));
wrapper.appendChild(document.createTextNode("Part 2 "));
// At this point, wrapper.childNodes.length === 2
wrapper.childNodes[0].textContent === "Part 1 "
wrapper.childNodes[1].textContent === "Part 2 "
wrapper.normalize();
// Now, wrapper.childNodes.length === 1
wrapper.childNodes[0].textContent === "Part 1 Part 2 "
</script>
</body>
</html>
私のテキストがマージされていないことがわかりました。私は残りの要件に従ったと思った。要件を理解するのが少し難しかった。どんなコメントも大歓迎です。
少し混乱します。あなたは、ページを記述する配列と配列からページを生成することに関してあなたの質問を始めますが、私はそのような配列をあなたのロジックのどこにも見ません。 – Taplar