我有一个函数,应该以对象作为参数,并返回一个字符串。
我编写的代码如下。
我编写的代码如下。
function check(obj) {
return obj.toString();
}
function check(obj) {
return obj.toString();
}
let toString = ({name, age, language}) => `name: ${name}, age: ${age}, language: ${language}`;
const david = { name: 'David', age: 22, language: 'PHP' };
console.log(toString(david));
如果您想要更通用:
let toString = obj => Object.entries(obj).map(([k, v]) => `${k}: ${v}`).join(', ');
const david = { name: 'David', age: 22, language: 'PHP', favoriteFood: 'blue' };
console.log(toString(david));
const obj = { name: "John", age: 30, city: "New York" };
JSON.stringify()
将其转换为字符串。
像这样JSON.stringify(obj)
。
然后你会得到这个字符串:"{"name":"John","age":30,"city":"New York"}"
。
请注意,此字符串包含引号,并且是一个有效的JSON格式字符串。var data = {name: "john", age: 30}
var str = JSON.stringify(data) // "{\"name\":\"john\",\"age\":30}"
var btoas = btoa(str) // "eyJuYW1lIjoiam9obiIsImFnZSI6MzB9"
var atobs = atob(btoas) // "{\"name\":\"john\",\"age\":30}"
var myRealData = JSON.parse(atobs) //{name: "john", age: 30}
` BOYAA !! `
btoa
或atob
。因此,这不是一个可行的解决方案,应将其删除。 - Tyler2Pbtoa
可以工作,当更改为 atob
时,该值为 [Object object]
。 - perona chanatob
和btoa
,以及alert
代码。 - perona chanbtoa(JSON.stringify(code))
代码可以正常工作。 - perona chan如果你想将一个对象转换为字符串,而不使用JSON.stringify()函数,那么可以采用这种技术。
let obj = {
x: 1,
y: 'HelloWorld',
toString: function(){
return `${this.x}, ${this.y}`;
}
};
let result = String(obj);
console.log(result, 'type --> ', typeof result);
function check(obj) {
console.log(typeof obj) // object
let res = JSON.stringify(obj)
console.log(typeof res) // string
return res;
}
let example = {name: "John"}
console.log(check(example)) // {"name":"John"}
有时候你需要的不仅仅是json。几乎总是需要json,但是...
有时候你需要一个JavaScript字符串,而不是json。比如当你填写graphql模板时。
它就像json字符串一样,但是它的属性周围没有引号。
export const toJavascriptString =
(obj: any) => JSON.stringify(obj).replace(/\"([\w_-]+?)\"\:/g, '$1:')
var obj = {a: 'wsd', b: 2}
var str = JSON.stringify(obj).replace(/\"([\w_-]+?)\"\:/g, '$1:')
console.log(str)
{a:"wsd",b:2}
JSON.stringify(object)
--> BOOM!-> 你得到了一个字符串 - darklightcodeactual.includes('"name": "Ant", "age": 28,.. etc)
。 - James