Javascript没有结构。
所以我可以在javascript中创建一个类似struct abc的GLOBAL对象。
struct abc包含一些变量&另一个结构struct xyz的数组。
struct xyz {
var age;
var name;
};
struct abc {
var start;
var end;
var length;
struct xyz xyz_array[100];
};
如果在javascript中无法构建结构,我该如何以这种格式保存数据?
=============================编辑我发现的一些解决方案============= ====
http://www.w3schools.com/js/js_object_definition.asp
Javascript: How to create an array of object literals in a loop
=============================================
var details = {
Start: 0,
End: 0,
length: 0
};
var arr = [];
var len = 100;
for (var i = 0; i < len; i++) {
arr.push({
direction: "out",
message : ""
});
}
=====================================
Array inside a Javascript Object?
var details = {
Start: 0,
End: 0,
length: 0
info_text : []
};
var len = 100;
for (var i = 0; i < len; i++) {
details.info_text.push({
direction: "out",
message : ""
});
}
=========================================
答案 0 :(得分:1)
TLDR:否。请改用对象。
JavaScript在语言中没有结构概念。您可以改为使用对象:
var xyz = {
something: "hello world"
}
答案 1 :(得分:0)
Javascript中最接近的等价物是&#39;对象&#39;。您可以通过两种方式创建和使用它们,如下所示。
简单的例子,使用对象文字
var xyz = {
age: 42,
name: 'fred'
};
更复杂的例子,使用Javascript&#39;类&#39; (真正的功能)
function xyz(age, name) {
this.age = age;
this.name = name;
this.getAge = function() { return age; }
}
var myXyz = new xyz(42, 'fred');
myXyz.getAge(); // Returns 42
答案 2 :(得分:0)
在JavaScript中,您可以使用function(){ ... }
,其中的行为可以更类似于其他语言中的类,其中可以执行结构可以执行的操作,但更强大。< / p>
function xyz() {
this.age = ...;
this.name = ...;
}
您也可以使用var
作为对象:
var xyz = { age: ... , name: ... };
答案 3 :(得分:0)
Javascript是一种基于对象的动态语言,不使用C语言中的struct概念。
根据您的要求,您可以使用 -
/* definition of an Object */
var xyz = function(age,name){
this.age = age;
this.name = name;
return this;
};
/* composition */
var abc = {
start:'',
end:'',
length:'',
xyz_pseudo_array: []
};
//push data inside the **xyz_pseudo_array** as and when needed, without having to worry about size-
abc.xyz_pseudo_array.push(new xyz(25,"Bill Gates"));
答案 4 :(得分:0)
简单类型的JavaScript是数字,字符串,布尔值(trueandfalse),null, 并且未定义。所有其他值都是对象。数字,字符串和布尔值 对象就像它们有方法,但它们是不可变的。 JavaScript中的对象 是可变的密钥集合。在JavaScript中,数组是对象,函数是对象, 正则表达式是对象,当然,对象也是对象。
所以你可以使用object,例如:
function xyz(age, name){
this.age = age;
this.name = name;
}
var abc = {
start : null,
end : null,
length: null
xyz_array: []
}
abc.xyz_array.push( new xyz(33, 'johnDoe') );
abc.xyz_array.push( new xyz(32, 'jeanDoe') );
console.log(abc);