zoukankan      html  css  js  c++  java
  • Web报表工具FineReport二次开发JS之字符串

    在报表开发过程中,有些需求可能无法通过现有的功能来实现,需要开发人员二次开发,以FineReport为例,可以使用网页脚本、API接口等进行深入的开发与控制。

    考虑到JS脚本开发的使用较多,这里先先简单介绍如何用JS对字符串进行操作,比如如何判断字符串是否为空,字符串的长度,替换,查找,截取,或者将字符串转换为其他类型等。

    1. 字符串的长度

    1.1 返回字符串长度

    获取字符串长度,可以使用字符串对象的length属性。例如:

    var txt= "Hello FR";	
    txt.length;       //返回长度

    就会返回8

    1.2 字符串的判空

    字符串为空,即字符串长度为0,若要实现判空,可以用如下方法:

    if(txt.length==0||txt=='')
    return true;     //为空
    else
    return false;     //不为空

    这里,txt.length==0 或txt==''只需要满足一个即可


    2. 字符串的替换

    字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。

    这里举个字符串替换的例子:

    var txt="Visit FR!";
    txt.replace(/Visit/, "Hello");

    结果将返回Hello FR!


    3. 字符串的查找

    search(regexp) 方法用于检索字符串中指定的子字符串,他将返回stringObject 中第一个与 regexp 相匹配的子串的起始位置。

    如果没有找到,将返回-1.

    但是,search方法无法查找全局,只查找第一个出现的匹配字符串。

    var txt="Visit FR!";
    txt.replace(/Visit/, "Hello");


    4. 字符串的截取

    我们可以用substr(start,length)方法来提取一个字符串中的部分内容。

    其中start是起始,提取长度为length的新字符串。

    举个例子

    var txt="Visit FR!";
    txt.substr(6,2);    //从第六个开始去两个

    上述结果将返回FR

    字符串下标从0开始,如果start为负,则默认从头开始提取。


    5. 字符串的连接

    可以通过字符串的concat(str1,str2...) 方法将多个字符串连接起来

    比如

    var str1="hello";
    var str2="FR";
    str1.concat(str2);

    结果将返回hello FR

    6. 字符串类型转换

    6.1 将字符串转换为数值

    可以直接用强制转换。

    如果是转换为浮点数,则为parseFloat(str)

    如果转换为整数型,则为parseInt()

    6.2 将字符串转换为数组

    可以使用字符串的split(separate)方法将字符串分割为数组。

    separate为筛选字符串。

    比如

    var str1="I love FR";
    var str2=str1.split(" ");

    str2将存储为一个字符串数组,值分别为"I","love","FR"

  • 相关阅读:
    移动端html的overflow:hidden属性失效问题
    js获取url传递参数,js获取url?号后面的参数
    zoom和transform:scale的区别
    css媒体查询来书写二倍图三倍图设置
    ajax和promise的结合使用
    react-router 嵌套路由 内层route找不到
    antd中按需加载使用react-app-rewired报错
    ts+antd报错error TS2605: JSX element type Xxx is not a constructor function for JSX elements
    在taro中跳转页面的时候执行两遍componentDidMount周期的原因和解决方法
    HDU 4602 Partition (矩阵乘法)
  • 原文地址:https://www.cnblogs.com/liang123/p/6325022.html
Copyright © 2011-2022 走看看