javascript怎么把字符串转换为数组

转换方法:1、使用“String.prototype.split()”语句;2、使用“[…string]”语句;3、使用“Array.from(string)”语句;4、使用“Object.assign([], string)”语句。

javascript怎么把字符串转换为数组

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

在JavaScript中把字符串转换为数组

如:有一个字符串 “uixdk”

要转换为数组 [“u”, “i”, “x”, “d”, “k”]

最常用的方式是使用String.prototype.split。

立即学习“Java免费学习笔记(深入)”;

var word = "uixdk";word.split('');//结果是 ["u", "i", "x", "d", "k"]

登录后复制

在ES6中,提供了更多的方法。这里我做了一个总结。

const string = 'uixdk';// 1. 使用String.prototype.split()方法 string.split('');// 2. 使用ES6解构运算符[...string];// 3. 使用Array.form()Array.from(string);// 4. 使用Object.assign() Object.assign([], string);//返回结果都是["u", "i", "x", "d", "k"]

登录后复制

以上4种方法返回结果都是[“u”, “i”, “x”, “d”, “k”],但是使用场景和方法略有差异。下面我们详细介绍一下。【推荐学习:javascript高级教程】

字符串转换成数组

如果只是简单的想把字符串中的每个字符分开,转换为数组。任何一种方法都可以,并且会获的相同的结果。

用特定的字符分割字符串

如果想用特定的字符分割字符串,只能使用String.prototype.split()方法。

const string = 'hello-uixdk';const arr1 = string.split('-');// 结构是 [ 'hello', 'uixdk' ]

登录后复制

其他方法只能分割每个字符。

const string = 'hello-uixdk';const arr2 = [...string];const arr3 = Array.from(string);const arr4 = Object.assign([], string);// 结果是 ["h", "e", "l", "l", "o", "-", "u", "i", "x", "d", "k"]

登录后复制

字符串中含有Emojis表情

如果在字符串中含有了emojis表情,事情就会变得麻烦一点。

使用方法1和方法4,结果可能不是你想要的:

1.png

使用ES6提供的另外两种方法:

2.png

String.prototype.split方法使用的是UTF-16编码分割字符串的。而emojis表情使用的是UTF-8编码,一个emojis标签实际上是两个字符构成的。

3.png

如果字符串里面有emojis表情,求字符串的长度可以使用

4.png

Object.assign() 的说明

方法4 Object.assign()其实并不会产生纯数组。先看看这个方法的定义:

Object.assign 方法只会拷贝源对象自身的并且可枚举的属性到目标对象。该方法使用源对象的[[Get]]和目标对象的[[Set]],所以它会调用相关 getter 和 setter。因此,它分配属性,而不仅仅是复制或定义新的属性。如果合并源包含getter,这可能使其不适合将新属性合并到原型中。 摘自MDN

使用Object.assign([], string),会将所有字符串属性复制到新数组中。会在数值上添加一些字符串方法。

TypeScript中要注意:

TypeScript 中测试返回结果不是 string[],在开发中要非常注意。这个问题以后详细介绍。

更多编程相关知识,请访问:编程视频!!

以上就是javascript怎么把字符串转换为数组的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2714425.html

(0)
上一篇 2025年3月7日 21:33:42
下一篇 2025年2月27日 04:51:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • javascript怎么进行全局错误处理

    在JavaScript中,可以通过绑定“window.onerrot”事件来进行页面全局error错误处理,语法格式“function 函数名(msg,url,l,c,error){//代码} window.onerror = 函数名;”。…

    2025年3月7日 编程技术
    200
  • javascript怎么禁止缓存

    方法:在js文件url后加问号和随机数字,例“a.js?223”。原理:在资源的url后面加上数字,对文件加载不会有影响,但如果数字发生改变,浏览器就会认为这是一个全新文件,会重新下载缓存,所以加数字的作用是强制浏览器调用新地址,防止缓存。…

    2025年3月7日
    200
  • javascript怎么实现按钮点击进行跳转

    方法:1、给按钮元素添加“onclick=”location.href=’url’””语句进行跳转。2、首先给按钮元素绑定点击事件;然后指定触发点击事件时,会执行的函数;最后在执行函数中,使用“locat…

    2025年3月7日
    200
  • javascript可以获取input的值吗

    javascript可以获取input的值,方法:首先使用“document.getElementById(“id值”)”语句获取到input元素对象;然后使用“input元素对象.value”语句来获取input元…

    2025年3月7日
    200
  • 教你一招吃通javascript正则表达式

    本篇文章给大家详细介绍一下吃通javascript正则表达式的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 正则表达式的作用 简单来讲正则表达式的作用就是进行字符串的增删改查,虽然javascritpt语言已经有及…

    2025年3月7日 编程技术
    200
  • 一招搞定JavaScript猜数字小游戏

    本篇文章给大家详细介绍一下搞定javascript猜数字小游戏的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 JavaScript 猜数字小游戏 在1~10中随机抽取一个数字,(抽取的数字可以在控制台查看)只有十次…

    2025年3月7日
    200
  • 如何实现网页标题闪烁效果

    本篇文章给大家详细介绍一下实现网页标题闪烁效果的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 代码 // 获取当前网页标题    // console.log(document.title);    // docu…

    2025年3月7日
    200
  • js怎么设置css实现隐藏

    实现方法:首先使用“document.getElementById(“id值”)”语句获取指定元素对象;然后使用“元素对象.style.display=”none””语句即可控制css,实现隐…

    2025年3月7日
    200
  • 教你一招实现简单计算器

    本篇文章给大家详细介绍一下javascript实现简单计算器的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 JS实现简单计算器 页面布局设计(HTML+CSS)   由于在之前的博客中有对html和css进行详细的…

    2025年3月7日 编程技术
    200
  • 详解JS中值传递和引用传递的区别

    本篇文章带大家详细了解一下javascript中值和引用传递的区别。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 在JavaScript中,可以通过值和引用传递。两者之间的主要区别是,按值传递发生在赋值基本类型的时候,而…

    2025年3月7日
    200

发表回复

登录后才能评论