JavaScript:转换为字符串函数

2017-05-03  本文已影响197人  勇往直前888

JavaScript转字符串,主要有三种方式
(1)object.toString()成员函数
(2)String(object)全局函数
(3)JSON.stringify(object)静态函数

object.toString()成员函数

var num = 10;
num.toString();       // '10',默认是十进制
num.toString(2);       // '1010'
num.toString(8);       // '12'
num.toString(10);       // '10'
num.toString(16);       // 'a'
10.toString();        // 报错

String(object)全局函数

var a = new String('abcd');
a instanceof String;   // true
var student = new Object(); 
student.name = "Lanny"; 
student.age = "25"; 
student.location = "China"; 
String(student);   // "[object Object]"
String([1,2,3]);              // "1,2,3"
String(["hello", "world"]);   // "hello,world"

JS中将一个值转换为字符串的方法

JSON.stringify(object)静态函数

var student = new Object(); 
student.name = "Lanny"; 
student.age = "25"; 
student.location = "China"; 
var json = JSON.stringify(student); 
console.log(json);  // {"name":"Lanny","age":"25","location":"China"}
var arr = ["a", "b", "c"];
var str = JSON.stringify(arr);
console.log(str);  // `["a","b","c"]`
String(arr);       // "a,b,c"

JS 对象(Object)和字符串(String)互转

关于JS中的JSON

JavaScript JSON

全局函数工具

module.exports = function globalToString(object) {
    var type = typeString(object);
    if (type === 'object' || type === 'array') {
        return JSON.stringify(object);
    } else {
        return String(object);
    }
}

// private
function typeString(object) {
    const string = Object.prototype.toString.call(object);
    return string.substring(8, string.length - 1).toLowerCase();
}
const getString = require('./global_to_string');
const log = console.log;

// 基本类型
log(getString(null));        // 'null'
log(getString(undefined));   // 'undefined'
log(getString(10));          // '10'
log(getString(true));        // 'true'
log(getString('abc'));       // 'abc'
var object;
log(getString(object));      // 'undefined'
log(getString());            // 'undefined'

// 数组
log(getString(["hello", "world"]));  // '["hello","world"]'
log(getString([]));                  // '[]'

// 自定义对象
var student = new Object(); 
student.name = "Lanny"; 
student.age = "25"; 
student.location = "China"; 
log(getString(student));  // '{"name":"Lanny","age":"25","location":"China"}'
log(getString({}));       // '{}'
上一篇下一篇

猜你喜欢

热点阅读