From 5a90166db2eb79a2241d00a46c02fda133772387 Mon Sep 17 00:00:00 2001 From: maple3142 Date: Sat, 14 Apr 2018 15:52:39 +0800 Subject: [PATCH] Add initializeNDArray --- snippets/initializeNDArray.md | 16 ++++++++++++++++ tag_database | 1 + 2 files changed, 17 insertions(+) create mode 100644 snippets/initializeNDArray.md diff --git a/snippets/initializeNDArray.md b/snippets/initializeNDArray.md new file mode 100644 index 000000000..5992adc36 --- /dev/null +++ b/snippets/initializeNDArray.md @@ -0,0 +1,16 @@ +### initializeNDArray + +Create a n-dimensional array with given value. + +Use `Array.map()` to generate rows where each is a new array initialize with `initializeNDArray`. + +```js +const initializeNDArray = (defval, ...args)=> + args.length===0 ? defval : Array.from({ length: args[0] }).map(() => initializeNDArray(defval, ...args.slice(1))); +``` + +```js +initializeNDArray(1,3); // [1,1,1] +initializeNDArray(0,2,3); // [[0,0,0],[0,0,0]] +initializeNDArray(5,2,2,2); // [[[5,5],[5,5]],[[5,5],[5,5]]] +``` diff --git a/tag_database b/tag_database index 7f3102125..ee70cbece 100644 --- a/tag_database +++ b/tag_database @@ -110,6 +110,7 @@ initialize2DArray:array initializeArrayWithRange:array,math initializeArrayWithRangeRight:array,math initializeArrayWithValues:array,math +initializeNDArray:array inRange:math intersection:array,math intersectionBy:array,function