我试图将一些来自AJAX请求的值分开 它们看起来像这样:
Object { name: "fsdfsd", details: "sdfsdf", password: "sdfsdgds" }
我基本上需要它们将变量中的每个值分开。我怎么能这样做?
我已经四处搜索但找不到合适的答案。我已经习惯了像$this->output
这样的PHP语法,我只是在一个月内不止一次使用JS,所以我仍然试图容纳:)
谢谢你!
答案 0 :(得分:3)
试试这个:
var res = { name: "fsdfsd", details: "sdfsdf", password: "sdfsdgds" };
var name = res.name;
var details = res.details;
var password = res.password;
但我强烈建议你使用res作为对象。您可以使用较少数量的变量并减少潜在问题。并且不要发送密码作为平原文本!有人可以监听您的流量并转储您的所有用户密码。
答案 1 :(得分:1)
如果你想要
,这是一个ES6版本它使用Destructuring assignment。它只能在最新的浏览器中使用
var res = { name: "fsdfsd", details: "sdfsdf", password: "sdfsdgds" }
var {name, details, password} = res
console.log(name)
答案 2 :(得分:0)
var objectName = { name: "fsdfsd", details: "sdfsdf", password: "sdfsdgds" }
var name = objectName.name;
var details = objectName.details;
var password = objectName.password;
答案 3 :(得分:0)
你不需要将它们分开。 从外观上看,ajax请求返回一个json对象。 存储一个变量。 例如:
var returnObj = getServicerequest(input); // ajax request that you call is handled in this function.
现在您可以访问值对,如:
alert(returnObj.name);
alert(returnObj.datails);
然而,通过ajax调用返回用户名和密码并不是一种很好的安全措施。
答案 4 :(得分:0)
试试这个:
var res = {
name: "fsdfsd",
details: "sdfsdf",
password: "sdfsdgds"
}
var Obj = res.name + " " + res.details + " " + res.password
console.log(Obj)

答案 5 :(得分:0)
您也可以使用和语句。它扩展了声明的范围链。
var res = { name: "fsdfsd", details: "sdfsdf", password: "sdfsdgds" }
with(res){
console.log(name)
console.log(details)
console.log(password)
}
建议不要使用with,并且在ECMAScript 5严格模式下禁止使用。建议的替代方法是将要访问其属性的对象分配给临时变量。 Ref