Hướng dẫn split number to array javascript - chia số thành mảng javascript

Chia một số thành một mảng #

Để chia một số thành một mảng:

  1. Chuyển đổi số thành một chuỗi.
  2. Sử dụng phương thức

    Copied!

    const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
    2 để chuyển đổi chuỗi thành một mảng các chữ số.
  3. Sử dụng hàm

    Copied!

    const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
    3 để chuyển đổi từng chuỗi trong mảng thành một số.

Copied!

const number = 1234; const arrOfDigits = Array.from[String[number], Number]; console.log[arrOfDigits]; // 👉️ [1, 2, 3, 4]

Tham số đầu tiên chúng tôi chuyển đến phương thức mảng. Từ một đối tượng có thể lặp lại mà chúng tôi muốn chuyển đổi thành một mảng.

Chúng tôi đã phải chuyển đổi số thành một chuỗi vì các số không được điều chỉnh.

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];

Tại thời điểm này, chúng tôi có một loạt các chuỗi. Chúng tôi đã sử dụng tham số thứ hai của phương thức

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
4 để chuyển đổi từng chuỗi thành một số.

Tham số thứ hai mà phương thức lấy là một hàm mảng.map.

Hàm được gọi với mỗi phần tử trong mảng. Chúng tôi muốn chuyển đổi từng phần tử thành một số, vì vậy chúng tôi sử dụng đối tượng số.

Dưới đây là một ví dụ sử dụng rõ ràng phương thức

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
5.

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]

Phương thức

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
6 được gọi với mỗi chuỗi trong mảng.

Trên mỗi lần lặp, chúng tôi chuyển đổi phần tử hiện tại thành một số và trả về kết quả.

Ngoài ra, bạn có thể sử dụng phương pháp

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
7.

Để chia một số thành một mảng:

  1. Chuyển đổi số thành một chuỗi.
  2. Sử dụng phương thức

    Copied!

    const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
    2 để chuyển đổi chuỗi thành một mảng các chữ số.
  3. Sử dụng hàm

    Copied!

    const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
    3 để chuyển đổi từng chuỗi trong mảng thành một số.

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]

Tham số đầu tiên chúng tôi chuyển đến phương thức mảng. Từ một đối tượng có thể lặp lại mà chúng tôi muốn chuyển đổi thành một mảng.

Chúng tôi đã phải chuyển đổi số thành một chuỗi vì các số không được điều chỉnh.

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];

Tại thời điểm này, chúng tôi có một loạt các chuỗi. Chúng tôi đã sử dụng tham số thứ hai của phương thức

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
4 để chuyển đổi từng chuỗi thành một số.

Tham số thứ hai mà phương thức lấy là một hàm mảng.map.

Hàm được gọi với mỗi phần tử trong mảng. Chúng tôi muốn chuyển đổi từng phần tử thành một số, vì vậy chúng tôi sử dụng đối tượng số.

  • Dưới đây là một ví dụ sử dụng rõ ràng phương thức

    Copied!

    const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
    5.
  • Phương thức

    Copied!

    const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
    6 được gọi với mỗi chuỗi trong mảng.

77

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Đây là mã của tôi cho đến nay:

var n = 123456789;
var d = n.toString[].length;
var digits = [];
var squaredDigits = [];
for [i = d; i >= 1; i--] {
    var j = k / 10;
    var r = [n % k / j] - 0.5;
    var k = Math.pow[10, i];
    var result = r.toFixed[]; 
    digits.push[result];
}

console.log[digits];

Nhưng khi tôi chạy mã của mình, tôi nhận được cái này:

var n = 123456789;
var d = n.toString[].length;
var digits = [];
var squaredDigits = [];
for [i = d; i >= 1; i--] {
    var j = k / 10;
    var r = [n % k / j] - 0.5;
    var k = Math.pow[10, i];
    var result = r.toFixed[]; 
    digits.push[result];
}

console.log[digits];
2

Nếu bất cứ ai có thể thấy vấn đề hoặc tìm ra một giải pháp tốt hơn, tôi sẽ đánh giá rất cao nó!

hỏi ngày 28 tháng 3 năm 2012 lúc 19:17Mar 28, 2012 at 19:17

Tại sao không chỉ làm điều này?

var n =  123456789;
var digits = [""+n].split[""];

Đã trả lời ngày 28 tháng 3 năm 2012 lúc 19:18Mar 28, 2012 at 19:18

10

Thế còn:

const n = 123456;
Array.from[n.toString[]].map[Number];
// [1, 2, 3, 4, 5, 6]

Đã trả lời ngày 23 tháng 4 năm 2017 lúc 16:49Apr 23, 2017 at 16:49

6

[123456789].toString[10].split[""]

^^ Điều này sẽ trả lại một loạt các chuỗi

[123456789].toString[10].split[""].map[function[t]{return parseInt[t]}]

^^ Điều này sẽ trả lại một mảng ints

Đã trả lời ngày 28 tháng 3 năm 2012 lúc 19:20Mar 28, 2012 at 19:20

Samcconesamcconesamccone

10,4K7 Huy hiệu vàng41 Huy hiệu bạc 50 Huy hiệu Đồng7 gold badges41 silver badges50 bronze badges

4

Tôi nhận ra điều này đã được hỏi vài tháng trước, nhưng tôi có một bổ sung cho câu trả lời của Samccone thì cô đọng hơn nhưng tôi không có đại diện để thêm như một bình luận!

Thay vì:

[123456789].toString[10].split[""].map[function[t]{return parseInt[t]}]

Consider:

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
1

Đã trả lời ngày 2 tháng 1 năm 2014 lúc 21:36Jan 2, 2014 at 21:36

user2521439user2521439user2521439

1.3752 Huy hiệu vàng12 Huy hiệu bạc19 Huy hiệu đồng2 gold badges12 silver badges19 bronze badges

5

Sửa đổi câu trả lời ở trên một chút. Chúng tôi thực sự không phải gọi phương thức 'bản đồ' một cách rõ ràng, bởi vì nó đã được tích hợp vào 'mảng.from' như một đối số thứ hai. Như MDN.

Mảng

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
2

Đã trả lời ngày 4 tháng 8 năm 2018 lúc 23:39Aug 4, 2018 at 23:39

AlexanderalexanderAlexander

3914 Huy hiệu bạc8 Huy hiệu đồng4 silver badges8 bronze badges

1

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
3

Shota

6.5608 Huy hiệu vàng35 Huy hiệu bạc64 Huy hiệu đồng8 gold badges35 silver badges64 bronze badges

Đã trả lời ngày 26 tháng 2 năm 2016 lúc 12:28Feb 26, 2016 at 12:28

0

Nó khá ngắn bằng cách sử dụng các mẫu phá hủy mảng và chuỗi:

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
4

Đã trả lời ngày 12 tháng 9 năm 2019 lúc 13:35Sep 12, 2019 at 13:35

EmeeusemeeusEmeeus

4.7842 Huy hiệu vàng20 Huy hiệu bạc35 Huy hiệu Đồng2 gold badges20 silver badges35 bronze badges

Giả sử giá trị

var n = 123456789;
var d = n.toString[].length;
var digits = [];
var squaredDigits = [];
for [i = d; i >= 1; i--] {
    var j = k / 10;
    var r = [n % k / j] - 0.5;
    var k = Math.pow[10, i];
    var result = r.toFixed[]; 
    digits.push[result];
}

console.log[digits];
3:

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
5

Một phiên bản ES6 tối thiểu nếu bạn muốn:

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
6

Một phiên bản thậm chí ngắn hơn nhưng ít dễ đọc hơn:

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
7

Bạn muốn đi thậm chí ngắn hơn [nhưng ít đọc hơn]?

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
8

Bạn nói ngắn hơn [và về cơ bản không thể đọc được] !?

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
9

Bây giờ bạn là một lập trình viên thực sự, xin chúc mừng!

Lưu ý phụ

Chúng không thực sự hiệu quả [vì hầu hết trong chủ đề này] vì bạn phân bổ 2 mảng thay vì 1. Bạn muốn hiệu quả hơn? Hãy thử điều này chỉ phân bổ một mảng:

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
0

Oldschool nhưng hiệu quả hơn, Huzzah!

Đã trả lời ngày 11 tháng 3 năm 2021 lúc 22:04Mar 11, 2021 at 22:04

Dana Woodmandana WoodmanDana Woodman

3.76633 huy hiệu bạc31 huy hiệu đồng33 silver badges31 bronze badges

Nó rất đơn giản, trước tiên hãy chuyển đổi số thành chuỗi bằng phương thức toString [] trong javascript và sau đó sử dụng phương thức split [] để chuyển đổi chuỗi thành một mảng các ký tự riêng lẻ.toString[] method in JavaScript and then use split[] method to convert the string to an array of individual characters.

Ví dụ, số là num, sau đónum, then

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
1

Đã trả lời ngày 20 tháng 4 năm 2019 lúc 16:58Apr 20, 2019 at 16:58

Naved Ahmadnaved AhmadNaved Ahmad

6836 Huy hiệu bạc7 Huy hiệu đồng6 silver badges7 bronze badges

Điều này sẽ hoạt động cho một số lớn hơn 0. Bạn không cần chuyển đổi số thành chuỗi:

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
2

Đã trả lời ngày 28 tháng 4 năm 2019 lúc 23:10Apr 28, 2019 at 23:10

techguy2000techguy2000techguy2000

4.2233 Huy hiệu vàng30 Huy hiệu bạc44 Huy hiệu đồng3 gold badges30 silver badges44 bronze badges

1

Bạn có thể nhận được một danh sách chuỗi từ số của bạn, bằng cách chuyển đổi nó thành một chuỗi, sau đó chia nó bằng một chuỗi trống. Kết quả sẽ là một loạt các chuỗi, mỗi chuỗi chứa một chữ số:

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
3

Hoặc để xây dựng trên này, hãy ánh xạ từng chữ số chuỗi và chuyển đổi chúng thành

var n = 123456789;
var d = n.toString[].length;
var digits = [];
var squaredDigits = [];
for [i = d; i >= 1; i--] {
    var j = k / 10;
    var r = [n % k / j] - 0.5;
    var k = Math.pow[10, i];
    var result = r.toFixed[]; 
    digits.push[result];
}

console.log[digits];
4:

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
4

Giao phối

2.2653 huy hiệu vàng17 Huy hiệu bạc25 Huy hiệu đồng3 gold badges17 silver badges25 bronze badges

Đã trả lời ngày 7 tháng 10 năm 2019 lúc 15:25Oct 7, 2019 at 15:25

CreeptosiscreeptosisCreeptosis

1561 Huy hiệu bạc4 Huy hiệu đồng1 silver badge4 bronze badges

Đây là một giải pháp thay thế cho câu trả lời của Nicolás. Bạn có thể tranh luận rằng nó có thể ít dễ đọc hơn. Trọng tâm là mảng.from [] có thể lấy hàm bản đồ tùy chọn làm tham số. Có một số mức tăng hiệu suất theo cách này vì không có mảng trung gian nào được tạo ra.

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
5

Đã trả lời ngày 10 tháng 4 năm 2018 lúc 4:11Apr 10, 2018 at 4:11

PdubpdubPDub

Phù hiệu bằng đồng 1144 bronze badges

1

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
6

Đã trả lời ngày 7 tháng 5 năm 2019 lúc 12:29May 7, 2019 at 12:29

1

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
7

Đã trả lời ngày 10 tháng 5 năm 2019 lúc 18:26May 10, 2019 at 18:26

Biệt danhNick

611 Huy hiệu bạc3 Huy hiệu đồng1 silver badge3 bronze badges

1

Suppose,

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
8

Đầu tiên, chúng tôi sẽ chuyển đổi nó thành chuỗi và sau đó áp dụng Split để chuyển đổi nó thành mảng các ký tự và sau đó ánh xạ nó để chuyển đổi mảng thành số nguyên.

Copied!

const number = 1234; // 👇️ ['1', '2', '3', '4'] const arrOfStr = Array.from[String[number]]; const arrOfNum = arrOfStr.map[str => Number[str]]; console.log[arrOfNum]; // 👉️ [1, 2, 3, 4]
9

Đã trả lời ngày 5 tháng 2 năm 2021 lúc 11:16Feb 5, 2021 at 11:16

1

Move:

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
0

ở trên

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
1

Đã trả lời ngày 28 tháng 3 năm 2012 lúc 19:49Mar 28, 2012 at 19:49

Matthewkmatthewkmatthewk

1.80116 huy hiệu bạc31 huy hiệu đồng16 silver badges31 bronze badges

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
2

Đã trả lời ngày 23 tháng 5 năm 2017 lúc 10:22May 23, 2017 at 10:22

1

Đã hơn 5 năm cho câu hỏi này nhưng rất nhiều người luôn hoan nghênh các cách thức hiệu quả để mã hóa/kịch bản.

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
3

Đã trả lời ngày 6 tháng 3 năm 2018 lúc 9:31Mar 6, 2018 at 9:31

Sanjay Shrsanjay ShrSanjay Shr

1.75614 Huy hiệu bạc16 Huy hiệu đồng14 silver badges16 bronze badges

Một phương pháp khác ở đây. Vì số trong JavaScript không thể tách rời theo mặc định, bạn cần chuyển đổi số thành một chuỗi trước tiên.

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
4

Đã trả lời ngày 17 tháng 8 năm 2018 lúc 13:06Aug 17, 2018 at 13:06

Cuối cùng tôi đã giải quyết nó như sau:

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
5

Đã trả lời ngày 7 tháng 3 năm 2019 lúc 3:52Mar 7, 2019 at 3:52

Penny Liupenny LiuPenny Liu

Huy hiệu vàng 13K571 Huy hiệu bạc86 Huy hiệu đồng5 gold badges71 silver badges86 bronze badges

Cập nhật với phép nội suy chuỗi trong ES2015.

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
6

Đã trả lời ngày 8 tháng 2 năm 2020 lúc 21:02Feb 8, 2020 at 21:02

MarkmarkMark

1.6121 Huy hiệu vàng11 Huy hiệu bạc23 Huy hiệu đồng1 gold badge11 silver badges23 bronze badges

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
7

Bây giờ số N được chia thành các chữ số của nó và chúng được trình bày trong một mảng và mỗi phần tử của mảng đó ở định dạng chuỗi. Để chuyển đổi chúng thành định dạng số, hãy làm điều này:

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
8

Hoặc nhận một mảng với tất cả các phần tử ở định dạng số từ đầu:

Copied!

// Supported in IE const number = 1234; const arr = String[number] .split[''] .map[str => Number[str]]; console.log[arr]; // 👉️ [1, 2, 3, 4]
9

Đã trả lời ngày 14 tháng 2 năm 2021 lúc 23:11Feb 14, 2021 at 23:11

Đây thực sự là giải pháp sạch nhất mà tôi nghĩ.

Copied!

const number = 1234; // 👇️ ['1', '2', '3' ,'4'] console.log[String[number].split['']];
0

Bạn đặt nó trong một chuỗi theo nghĩa đen nhưng nó được giữ dưới dạng số, và sau đó nó được chia thành một mảng và được gán cho các chữ số.

Đã trả lời ngày 19 tháng 5 năm 2021 lúc 19:03May 19, 2021 at 19:03

Copied!

// 👇️ ['1', '2', '3', '4'] console.log[Array.from[String[1234]]];
3

Đã trả lời ngày 5 tháng 1 năm 2019 lúc 14:59Jan 5, 2019 at 14:59

0

Bạn có thể chia một số thành một mảng javascript không?

Chúng ta cũng có thể chia một số thành một mảng với phương thức chia [] chuỗi. Để làm điều này: Chuyển đổi số thành một chuỗi. Gọi phương thức chia [] trên chuỗi để chuyển đổi nó thành một mảng các chữ số được chuỗi.. To do this: Convert the number to a string. Call the split[] method on the string to convert it into an array of stringified digits.

Làm thế nào để bạn chia một số thành một mảng?

Approach:..
Lưu trữ giá trị số nguyên trong một biến ..
Typecast số nguyên thành một chuỗi ..
Sử dụng phương thức Split [] để biến nó thành một loạt các chuỗi ..
Lặp lại trên mảng đó bằng phương thức bản đồ [] ..
Sử dụng phương thức bản đồ [] trả về mảng chuỗi thành một mảng số nguyên ..

Làm thế nào để bạn chia một mảng trong JavaScript?

Phương thức Split [] chia một chuỗi thành một mảng các chuỗi con.Phương thức chia [] trả về mảng mới.Phương thức chia [] không thay đổi chuỗi gốc.Nếu [""] được sử dụng làm dấu phân cách, chuỗi được phân chia giữa các từ.. The split[] method returns the new array. The split[] method does not change the original string. If [" "] is used as separator, the string is split between words.

Làm thế nào để bạn chia một số?

Vì các số là thập phân [cơ sở 10], nên mỗi phạm vi của chữ số phải là 0 đến 9 ...
Vì vậy, chúng ta có thể dễ dàng bằng cách thực hiện Modulo 10 ..
12 % 10 => 2 [chúng tôi đã phân chia chữ số 2 khỏi số 12].
12/10 => 1 ..
1 % 10 = 1 ..

Bài Viết Liên Quan

Chủ Đề