TIL 19日目-混同または誤解の概念


配列にオブジェクトがある場合は、読み込みます。

const Array = [
    0,
    2,
    hi,
    { value1: 7, value2: 8, value3: 9, value4 : 10 },
    [a,b,c]
    ];
value 1を読み込みたい場合はArray[3][value 1];value 2を読み込みたい場合はArray[3][value 2]またはArray[3]を読み込みます.value 2 bを読み込みたい場合はArray[4][1]

pop、push、unshift、shiftが返す値!


ポップとshiftは選ばれた友達を
pushとunshiftが入ってから新しい配列の全長を返します

空の配列と空のオブジェクトのlength戻り値が異なります!


a = []
b = {}
a.length = 0
b.length = undefined
空の配列は0を返し、空のオブジェクトは未定義を返します.いいえ.オブジェクトは無条件に未定義を返します.オブジェクトの長さを理解するには、「Object」をクリックします.keys(b).lengthを利用します.オブジェクトを記憶します.lengthはundefinedを無条件に返します.

ふかほうしゃ



Object.objはassign({},obj})によって浅くコピーされる.
1 deepthの要素は、元の要素とは関係なく、独自のアドレスを持ちます.
オブジェクトにオブジェクトがある場合(つまり、2 deepthより大きい場合)、深度コピーではありません.元のオブジェクトの2 deepth以下の値が変更された場合、オブジェクトです.assignでコピーしたオブジェクトの値も変更されます.Object.assignは浅福の関係だからです.
これに対して24行以下から始まることを示す.

配列で展開構文を使用する場合


const A = [1,2,3]
const B = [0,4]
const C=[0,A,B]は[0,1,2,3,4]に等しくなく、[0,1,2,3],4]である.[0,1,2,3,4]で表したい場合は、[0,...A.B]を入力します.
同じように
cont空配列=[]
constには、空の配列=[0,空の配列,1]/[0,[],1]が表示されます.
[0...空の配列、1]が出てくる[0、1]

浅い複製タイル


Array.from()
.slice()
.concat
配列を薄くコピーしています!

パラメータがspread構文で、空の配列の場合

    function getAllParams(required1, required2, ...args) {
      return [required1, required2, args];
    }
    expect(getAllParams(123)).to.deep.equal([123,undefined,[]]);
空の配列の場合、undefinedではなく[]が放出されます.

文字列からすべてのスペースを削除

var regText = "   123   45 6   ";    // 문자열을 regText변수에 저장함
regText.replace(/ /gi, "");    // 모든 공백을 제거

console.log(regText);