我有一个看起来像这样的结构:
var set_2 = {
nameofSet : 'French greetings',
category: 'languages',
cards : [
{
front : 'bonjour',
back : 'dzien dobry'
},
{
front : 'bonne nuit',
back : 'dobranoc'
},
{
front : 'bon soir',
back : 'dobry wieczor'
}
]
}
我可以在这样的循环中迭代它们:
var cards = set_2.cards;
for (k = 0;k<cards.length;k++) {
var frontSide = cards[k].front;
var backSide = cards[k].back;
}
我是否正确地假设在卡阵列中我有几个没有名字的对象?
如果是这样,我怎样才能将更多这样的对象推送到卡阵列而不给它们命名?我想在for循环中创建这些对象。
答案 0 :(得分:1)
我不确定您的名字是什么意思,但您可以将更多对象推送到数组中:
set_2.cards.push({front: 'front', back: 'back'});
答案 1 :(得分:1)
问:我是否正确假设在纸牌阵列中我有几个 没有名字的物体?
A:是的,它们没有像对象属性那样的属性名,但是它们每个都有索引,就像数组的索引一样,如0、1、2。 或者更确切地说:
set_2.cards[0]
set_2.cards[1]
set_2.cards[2]
问:如果是这样,我如何将更多类似的对象推入纸牌阵列 没有给他们起名字?
A:正如公认的答案所说:
set_2.cards.push({front: 'front', back: 'back'});
您推送到数组中的这些新对象将没有名称,但是将具有索引(或“索引”)。
总而言之,数组的元素由其索引号(JavaScript编号)表示,而对象中的条目由其属性名称(JavaScript字符串)表示。
答案 2 :(得分:1)
你不能创建一个没有名字的对象。带有名称的对象或只是普通数组,但您可以创建名称后跟数组的对象。
var set_2 = {
nameofSet : 'French greetings',
category: 'languages',
cards : [
{
front: ['bonjour', 'bonne nuit', 'bon soir'],
back: ['dzien dobry', 'dobranoc' 'dobry wieczor']
}
]
}
'卓悦'
console.log(set_2.cards[0].front[0]);
'多布拉诺克'
console.log(set_2.cards[0].back[1]);
推到前面
set_2.cards[0].front.push('Hello');
向后推
set_2.cards[0].back.push('Hello');
答案 3 :(得分:0)
您可以像这样使用 /**/
$mailto = $_POST['mailto'];
$mailfrom = $_POST['mailfrom'];
$mailsubject = $_POST['mailsubject'];
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$description = $_POST['description'];
$description = wordwrap($description, 100, "<br />");
/* break description content every after 100 character. */
$content = '';
$content .= '
<style>
table {
border-collapse: collapse;
}
table{
width:800px;
margin:0 auto;
}
td{
border: 1px solid #e2e2e2;
padding: 10px;
max-width:520px;
word-wrap: break-word;
}
</style>
';
/* you css */
$content .= '<table>';
$content .= '<tr><td>Mail To</td> <td>' . $mailto . '</td> </tr>';
$content .= '<tr><td>Mail From</td> <td>' . $mailfrom . '</td> </tr>';
$content .= '<tr><td>Mail Subject</td> <td>' . $mailsubject . '</td> </tr>';
$content .= '<tr><td>Firstname</td> <td>' . $firstname . '</td> </tr>';
$content .= '<tr><td>Lastname</td> <td>' . $lastname . '</td> </tr>';
$content .= '<tr><td>Description</td> <td>' . $description . '</td> </tr>';
$content .= '</table>';
require_once('html2pdf/html2pdf.class.php');
$to = $mailto;
$from = $mailfrom;
$subject = $mailsubject;
$html2pdf = new HTML2PDF('P', 'A4', 'fr');
$html2pdf->setDefaultFont('Arial');
$html2pdf->writeHTML($content, isset($_GET['vuehtml']));
$html2pdf = new HTML2PDF('P', 'A4', 'fr');
$html2pdf->WriteHTML($content);
$message = "<p>Please see the attachment.</p>";
$separator = md5(time());
$eol = PHP_EOL;
$filename = "pdf-document.pdf";
$pdfdoc = $html2pdf->Output('', 'S');
$attachment = chunk_split(base64_encode($pdfdoc));
$headers = "From: " . $from . $eol;
$headers .= "MIME-Version: 1.0" . $eol;
$headers .= "Content-Type: multipart/mixed; boundary=\"" . $separator . "\"" . $eol . $eol;
$body = '';
$body .= "Content-Transfer-Encoding: 7bit" . $eol;
$body .= "This is a MIME encoded message." . $eol; //had one more .$eol
$body .= "--" . $separator . $eol;
$body .= "Content-Type: text/html; charset=\"iso-8859-1\"" . $eol;
$body .= "Content-Transfer-Encoding: 8bit" . $eol . $eol;
$body .= $message . $eol;
$body .= "--" . $separator . $eol;
$body .= "Content-Type: application/octet-stream; name=\"" . $filename . "\"" . $eol;
$body .= "Content-Transfer-Encoding: base64" . $eol;
$body .= "Content-Disposition: attachment" . $eol . $eol;
$body .= $attachment . $eol;
$body .= "--" . $separator . "--";
if (mail($to, $subject, $body, $headers)) {
$msgsuccess = 'Mail Send Successfully';
} else {
$msgerror = 'Main not send';
}
方法
push()
答案 4 :(得分:0)
关于有几个没有名称的对象的问题。如果我理解正确,那么您只有一个主要对象。它的名称是“ set_2”。其余的“ nameofSet”,“ category”和“ cards”是对象属性的名称。
“ cards”具有一个数组值,如果您要求这样做,则该数组值似乎具有带有“ front”和“ back”属性的空对象。