IBM Domino Designer 9 Social Edition XPages Reference

First Edition

Published March 2013

About this edition

In keeping with IBM's commitment to accessibility, this edition of the product documentation is accessible.

Updates to this document

This HTML file contains the latest draft of the official product documentation for this release. This draft is refreshed on a quarterly basis, as necessary. For the latest product documentation updates, refer to the release-specific articles available in the Product Documentation section of the wiki.

Printing

When you print this document some of the style elements are removed to create a better print output. Here are a few tips about printing:
  • The document length might exceed the browser's print capability. Microsoft Internet Explorer has demonstrated the ability to print large files successfully.
  • This document is long. Use print preview to determine the printed page length.
  • You can highlight section of the document and then choose to only print the selected content

Working offline

You can save a local copy of this document from your browser. Each browser has different menus and menu options. Consult the browser help if you need assistance saving the document locally.

Submitting feedback

If you would like to provide feedback about this document, see the Documentation Feedback Web site.

คำแนะนำเกี่ยวกับการอ้างอิง JavaScript และ XPages

การอ้างถึงนี้กล่าวถึงอิลิเมนต์ภาษา JavaScript, Application Programming Interfaces (APIs), และ artifacts อื่นๆ ที่คุณต้องใช้สร้างสคริปต์, บวกกับแอ็คชันพื้นฐาน XPages

ส่วนที่ต้องพิจารณามีดังนี้:
พื้นที่การอ้างอิง คำอธิบาย
อิลิเมนต์ภาษา JavaScript (JavaScript) JavaScript ที่อธิบาย ในที่นี้ใช้กับ interpreter ฝั่งเซิร์ฟเวอร์
แอ็คชัน แบบง่าย แอ็คชันแบบง่ายดำเนินกิจกรรมที่โปรแกรมล่วงหน้า ที่สามารถแก้ไขได้ด้วยอาร์กิวเมนต์
โกลบอลอ็อบเจ็กต์และฟังก์ชัน (JavaScript) โกลบอลอ็อบเจ็กต์มี entry points ไปยังสคริปต์ฝั่ง เซิร์ฟเวอร์
DOM (JavaScript) ไลบรารี DOM แสดง เอกสาร XML
Domino ไลบรารี Domino แทนค่าที่เก็บข้อมูล IBM Domino
Runtime (JavaScript) ไลบรารี Runtime แสดง ไลบรารีแอ็พพลิเคชัน
Standard (JavaScript) ไลบรารี Standard แสดง ชนิดข้อมูลต่างๆ
XSP (JavaScript) ไลบรารี XSP แสดง บริบทการเรียกใช้งานเซิร์ฟเวอร์

เอกสารคู่มือนี้อ้างถึงผลิตภัณฑ์ต่อไปนี้: IBM Domino, IBM Domino Designer, IBM Notes, IBM iNotes, และ IBM Notes Traveler

อิลิเมนต์ภาษา JavaScript (JavaScript)

อิลิเมนต์ภาษา JavaScript อิงตาม ECMAScript Language Specification Standard ECMA-262 (ดูที่ http://www.ecma-international.org/publications/standards/Ecma-262.htm) JavaScript ที่อธิบาย ในที่นี้ใช้กับ interpreter ฝั่งเซิร์ฟเวอร์ สคริปต์ฝั่งไคลเอ็นต์ถูกแปลโดย เบราว์เซอร์

ตารางต่อไปนี้แสดงรายการอิลิเมนต์ภาษา:
อิลิเมนต์ภาษา คำอธิบาย
ข้อความสั่ง (JavaScript) คีย์เวิร์ดและไวยากรณ์ที่จัดรูปแบบเฟรมเวิร์ก ของสคริปต์
ตัวดำเนินการ (JavaScript) สัญลักษณ์และคีย์เวิร์ดที่กำหนดค่า เปรียบเทียบ และ รวมค่า
ฟังก์ชันระดับบนสุด (JavaScript) ฟังก์ชันที่ไม่สัมพันธ์กับอ็อบเจ็กต์ใดๆ
@Functions (JavaScript) ฟังก์ชันที่เลียนแบบ IBM Notes @functions
การพิมพ์ตัวแปรโดยนัย (JavaScript) ความสามารถเชื่อมโยงตัวแปรที่มีชนิด ข้อมูลกับเอกสารที่โค้ดของคุณ และเนื้อหาโดยตรงช่วย
การฝัง Java ใน JavaScript ความสามารถในการฝังโค้ด Java

เอกสารคู่มือนี้อ้างถึงผลิตภัณฑ์ต่อไปนี้: IBM Domino, IBM Domino Designer, IBM Notes, IBM iNotes, และ IBM Notes Traveler

ข้อความสั่ง (JavaScript)

ข้อความสั่ง JavaScript ประกอบ ด้วยคีย์เวิร์ดและไวยากรณ์

  • ข้อความสั่งเดียวอาจขยายไปหลายบรรทัด
  • หลายข้อความสั่งอาจเกิดขึ้นบนบรรทัดเดียวโดยคั่นด้วยเซมิโคลอน
  • เซมิโคลอนอาจเลือกให้เป็นตัวสิ้นสุดข้อความสั่งสุดท้ายบนบรรทัด
ดูที่ข้อมูลจำเพาะ ECMA (http://www.ecma-international.org/publications/standards/Ecma-262.htm) สำหรับคำอธิบายเกี่ยวกับข้อความสั่ง โปรดทราบข้อยกเว้นต่อไปนี้:
  • import (การประยุกต์ใช้เฉพาะ) ได้รับการสนับสนุน ให้อิมพอร์ตโค้ดจากไลบรารีสคริปต์ ดูที่ import (JavaScript)
  • export (การประยุกต์ใช้เฉพาะ และไม่อยู่ใน มาตรฐาน ECMA) ไม่ได้รับการสนับสนุน
  • label (ไม่ถูกพิจารณาเป็นโปรแกรมมิงที่ดี) ไม่ได้รับ การสนับสนุน

import (JavaScript)

อิมพอร์ตโค้ดจากสคริปต์ไลบรารี

ไวยากรณ์

import libraryname

การใช้งาน

สคริปต์ไลบรารีให้คุณเก็บ คลาส ฟังก์ชัน และตัวแปรสำหรับการใช้งานทั่วไปภายในแอ็พพลิเคชัน

ตัวอย่าง

ตัวอย่างต่อไปนี้ใช้ฟังก์ชัน ที่กำหนดในไลบรารี:
import PrintUtil;
printToLog("Here's some stuff for the log.");
สคริปต์ ไลบรารีชื่อ PrintUtil มีเนื้อหาต่อไปนี้:
// Function for highlighting output to log
function printToLog(stuff) {
  print("\r\nPRINT START\r\n");
  print(stuff);
  print("\r\nPRINT END\r\n");
}

ตัวดำเนินการ (JavaScript)

ตัวดำเนินการแบ่งออกเป็นหมวดหมู่ต่อไปนี้:
ตารางต่อไปนี้แสดงรายการการนำหน้า และความสัมพันธ์ของตัวดำเนินการ ตัวดำเนินการที่มีลำดับการนำหน้าต่ำกว่าจะหาค่าแรกเป็นซ้ายไปขวา หรือขวาไปซ้าย ดังแสดงรายการ วงเล็บสามารถใช้เพื่อเปลี่ยนลำดับการหาค่า นิพจน์ที่อยู่ในเครื่องหมายวงเล็บจะถูกหาก่อนโดยเริ่มจากด้านในออกมา
การนำหน้า ตัวดำเนินการ ความสัมพันธ์
1 . [] ซ้ายไปขวา
new ขวาไปซ้าย
2 () ซ้ายไปขวา
3 ++ -- ไม่สามารถใช้ได้
4 ! ~ - (negation) + (unary plus) typeof void delete ขวาไปซ้าย
5 * / % ซ้ายไปขวา
6 + - ซ้ายไปขวา
7 << >> >>> ซ้ายไปขวา
8 > >=< <= ซ้ายไปขวา
9 == != === !== ซ้ายไปขวา
10 & ซ้ายไปขวา
11 ^ ซ้ายไปขวา
12 | ซ้ายไปขวา
13 && ซ้ายไปขวา
14 || ซ้ายไปขวา
15 ?: ขวาไปซ้าย
16 = += -= *= /= %=&= |= ^= <<= >>= >>>= ขวาไปซ้าย
17 , ซ้ายไปขวา

ตัวดำเนินการกำหนดค่า (JavaScript)

ตัวดำเนินการกำหนดค่ากำหนดค่าให้กับตัวถูกดำเนินการด้านซ้าย ตามค่าของตัวดำเนินการด้านขวา ตัวดำเนินการกำหนดค่าพื้นฐาน คือเท่ากับ (=) ตัวดำเนินการกำหนดค่าอื่นเป็น shorthand สำหรับการดำเนินการ อื่นบวกการกำหนดค่า

ตัวดำเนินการ ความหมาย คำอธิบาย
x = y x = y กำหนดค่า y ให้แก่ x
x += y x = x + y กำหนดผลลัพธ์ของ x บวก y ให้แก่ x
x -= y x = x - y กำหนดผลลัพธ์ของ x ลบ y ให้แก่ x
x *= y x = x * y กำหนดผลลัพธ์ของ x คูณ y ให้แก่ x
x /= y x = x / y กำหนดผลลัพธ์ของ x หาร ด้วย y ให้แก่ x
x %= y x = x % y กำหนดผลลัพธ์ของ x มอดูโล y ให้แก่ x
x &=y x = x & y กำหนดผลลัพธ์ของ x AND y ให้แก่ x
X |=y x =x | y กำหนดผลลัพธ์ของ x OR y ให้แก่ x
x ^=y x = x ^ y กำหนดผลลัพธ์ของ x XOR y ให้แก่ x
x <<= y x = x << y กำหนดผลลัพธ์ของ x เลื่อน ทางซ้าย y ตำแหน่งให้แก่ x
x >>= y x = x >> y กำหนดผลลัพธ์ของ x เลื่อน ทางขวา y ตำแหน่งให้แก่ x
x >>>= y x = x >>> y กำหนดผลลัพธ์ของ x เลื่อน ทางขวา y ตำแหน่งให้แก่ x

ตัวอย่าง

ตัวอย่างนี้ใช้ตัวดำเนินการ = และ += การวนซ้ำแต่ละครั้งจะทำงานเหมือนกัน
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

p("start =");
var x = 0.1;
do {
	p("x = " + x);
	x = x + 0.1;
} while(x < 1.0)

p("start +=");
var x = 0.1;
do {
	p("x = " + x);
	x += 0.1;
} while(x < 1.0)

ตัวอย่างนี้ใช้ตัวดำเนินการ กหำนดค่าที่มีการคำนวณทางคณิตศาสตร์ด้วย

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var x1 = 1.0, x2 = 1.0, x3 = 1.0, x4 = 1.0;
var y = 0.25;
for(var i = 0; i < 5; i++) {
	x1 += y;
	x2 -= y;
	x3 *= y;
	x4 /= y;
}
p("x1 += y: " + x1);
p("x2 -= y: " + x2);
p("x3 *= y: " + x3);
p("x4 /= y: " + x4);

ตัวดำเนินการเปรียบเทียบ (JavaScript)

ตัวดำเนินการเปรียบเทียบจะเปรียบเทียบสองค่า และให้ผลลัพธ์ โลจิคัล (บูลีน)

ตารางต่อไปนี้อธิบายตัวดำเนินการเปรียบเทียบ

ตัวดำเนินการ คำอธิบาย
expr1 == expr2 เท่ากับ ส่งคืนค่าจริงถ้า expr1 และ expr2 เท่ากัน การแปลงเกิดขึ้นถ้าตัวถูกดำเนินการมีชนิดต่างกัน
expr1 != expr2 ไม่เท่ากับ ส่งคืนค่าจริงถ้า expr1 และ expr2 ไม่เท่ากัน การแปลงชนิดเกิดขึ้นถ้าจำเป็น
expr1 === expr2 เท่ากับแบบจำกัด ส่งคืนค่าจริงถ้า expr1 และ expr2 มีชนิดเดียวกัน และเท่ากัน
expr1 !== expr2 ไม่เท่ากับแบบจำกัด ส่งคืนค่าจริงถ้า expr1 และ expr2 มีชนิดเดียวกัน หรือมีชนิดเดียวกัน แต่ไม่เท่ากัน
expr1 > expr2 มากกว่า ส่งคืนค่าจริงถ้า expr1 มากกว่า expr2 การแปลงชนิดเกิดขึ้นถ้าจำเป็น
expr1 >= expr2 มากกว่าหรือเท่ากับ ส่งคืนค่าจริงถ้า expr1 มากกว่าหรือเท่ากับ expr2 การแปลงชนิดเกิดขึ้น ถ้าจำเป็น
expr1 < expr2 น้อยกว่า ส่งคืนค่าจริงถ้า expr1 น้อยกว่า expr2 การแปลงชนิดเกิดขึ้นถ้าจำเป็น
expr1 <= expr2 น้อยกว่าหรือเท่ากับ ส่งคืนค่าจริงถ้า expr1 น้อยกว่าหรือเท่ากับ expr2 การแปลงชนิดเกิดขึ้น ถ้าจำเป็น

การใช้งาน

การเปรียบเทียบตัวถูกดำเนินการเกิดขึ้นดังนี้:
  • สตริงสองสตริงเท่ากันถ้าสตริงมีลำดับอักขระเหมือนกัน และความยาวเท่ากัน สตริงมากกว่าหรือน้อยกว่าอีกสตริงขึ้นอยู่กับ ค่า Unicode ของอักขระในลำดับ
  • ตัวเลขสองจำนวนเท่ากันถ้าตัวเลขมีค่าตัวเลขเดียวกัน NaN ไม่เท่ากับสิ่งใด รวมถึง NaN ศูนย์ค่าบวก และศูนย์ค่าลบ เท่ากัน
  • อ็อบเจ็กต์สองอ็อบเจ็กต์เท่ากับถ้าอ็อบเจ็กต์อ้างอิงอ็อบเจ็กต์เดียวกัน
  • ค่าบูลีนสองค่าเท่ากันถ้าทั้งสองเป็นจริง หรือเป็นเท็จ
  • ค่า null และชนิดที่ไม่กำหนดจะเท่ากัน
การแปลงเกิดขึ้นดังนี้:
  • สำหรับการเปรียบเทียบกับตัเลข สตริงจะถูกแปลงเป็นตัวเลข (ค่าที่มีชนิด Number ) ถ้าเป็นไปได้ ถ้าการแปลง ให้ผลลัพธ์เป็น NaN การแปลงเป็นเท็จ
  • สำหรับการเปรียบเทียบกับค่าบูลีน จำนวน 0 (ค่าบวก หรือ ค่าลบ จำนวนเต็ม หรือทศนิยม) เป็นเท็จ และจำนวนอื่นทั้งหมด เป็นจริง สตริงว่างเป็นเท็จ และสตริงอื่นทั้งหมดเป็นจริง null เป็นเท็จ และจำนวที่ไม่กำหนดเป็นเท็จ
  • สำหรับการเปรียบเทียบกับตัวเลขและสตริง อ็อบเจ็กต์แปลงเป็นตัวเลข หรือสตริงโดยใช้เมธอด valueOf และ toString ของอ็อบเจ็กต์ ถ้าการแปลงล้มเหลว จะเกิดข้อผิดพลาดรันไทม์

ตัวอย่าง

ตัวอย่างนี้ใช้ตัวดำเนินการเปรียบเทียบ ต่างๆ กับตัวเลข
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var n = 9;

p("n == 9: " + (n == 9)); // true
p("n != 9 : " + (n != 9)); // false
p("n == \"9\" : " + (n == "9")); // true
p("n != \"9\" : " + (n != "9")); // false
p("n === \"9\" : " + (n === "9")); // false
p("n !== \"9\" : " + (n !== "9")); // true
p("n > 9: " + (n > 9)); // false
p("n >= 9: " + (n >= 9)); // true
p("n < 9: " + (n < 9)); // false
p("n <= 9: " + (n <= 9)); // true
p("n > \"9\" : " + (n > "9")); // false
p("n >= \"9\" : " + (n >= "9")); // true
p("n < \"9\" : " + (n < "9")); // false
p("n <= \"9\" : " + (n <= "9")); // true

ตัวดำเนินการคำนวณ (JavaScript)

ตัวดำเนินการคำนวณจะดำเนินการคำนวณทางคณิตศาสตร์พื้นฐาน

การดำเนินการ คำอธิบาย
n1 + n2 ส่งคืน n1 บวก n2
n1 - n2 ส่งคืน n1 ลบ n2
n1 * n2 ส่งคืน n1 คูณ n2
n1 / n2 ส่งคืน n1 หารด้วย n2
n1 % n2 ส่งคืน n1 มอดูโล n2 นั่นคือเศษเหลือของจำนวนเต็มที่หาร n1 ด้วย n2
n++ ส่งคืน n จากนั้นเพิ่มค่า n ด้วย 1
++n เพิ่มค่า n ด้วย 1 จากนั้นส่งคืน n
n-- ส่งคืน n จากนั้นลดค่า n ด้วย 1
--n ลดค่า n ด้วย 1 จากนั้นส่งคืน n
-n ค่าลบของ n
+n เหมือนกับ n

การใช้งาน

ผลลัพธ์ของการคำนวณทางคณิตศาสตร์ เป็นจำนวนเต็มถ้าผลลัพธ์ไม่มีเลขเศษส่วน หรือจุดทศนิยมถ้า ผลลัพธ์มีเลขเศษส่วน

การหารเลขจำนวนเต็มสองจำนวนที่มีผลลัพธ์เป็น เศษส่วนจะได้เป็นค่าทศนิยม ไม่ใช่เลขจำนวนเต็มที่มีเลขเศษส่วนถูก ตัดทิ้ง ตัวอย่างเช่น 13 / 4 = 3.25 เมื่อต้องการให้ได้ เป็นเลขจำนวนเต็มที่เศษส่วนถูกตัดทิ้ง อันดับแรกคุณอาจลบ มอดุลัสออกจากตัวตั้งหาร ตัวอย่างเช่น (13 - ( 13 % 4)) / 4 = 3

ตัวอย่าง

ตัวอย่างนี้ใช้ตัวดำเนินการคำนวณ สำหรับการบวก การลย การคูณ และการหาร
var n = 3;
var m = 4;
var x = 3.1;
var y = 4.2;
print("<<<n = " + n + ">>>");
print("<<<m = " + m + ">>>");
print("<<<x = " + x + ">>>");
print("<<<y = " + y + ">>>");
print("<<<n+m = " + (n + m) + ">>>"); // 7
print("<<<n-m = " + (n - m) + ">>>"); // -1
print("<<<n*m = " + (n * m) + ">>>"); // 12
print("<<<n/m = " + (n / m) + ">>>"); // 0.75
print("<<<n+x = " + (n + x) + ">>>"); // 6.1
print("<<<n-x = " + (n - x) + ">>>"); // -0.10000000000000009
print("<<<n*x = " + (n * x) + ">>>"); // 9.3
print("<<<5*x = " + (5 * y) + ">>>"); // 21
print("<<<n/x = " + (n / x) + ">>>"); // 0.9677419354838709

ตัวอย่าง นี้แสดงตัวดำเนินการมอดุลัส และแสดงวิธีที่คุณ ทำในการหารจำนวนเต็มที่มีเศษเหลือ

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var n = 13;
var m = 4;
p("n = " + n);
p("m = " + m);
var r = n % m;
var q = (n - r) / m;
p("integer n / m = " + q + ", remainder " + r); // 3, 1

ตัวอย่าง นี้แสดงตัวดำเนินการเพิ่มและการลด

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var ipost = 0;
var ipre = 0;
var dpost = 0;
var dpre = 0;

for(var i = 0; i < 5; i++) {
	p("iteration number " + i); // 0 on first iteration
	p("ipost = " + ipost++); // 0 on first iteration
	p("ipre = " + ++ipre); // 1 on first iteration
	p("dpost = " + dpost--); // 0 on first iteration
	p("ipre = " + --dpre); // -1 on first iteration
}

ตัวอย่างนี้แสดงตัวดำเนินการนิเสธ

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var n = 1;
var m = -1;
var nn = -n;
var mm = -m;

p("negative " + n + " = " + nn); // prints -1
p("negative " + m + " = " + mm); // prints 1

ตัวดำเนินการ Bitwise (JavaScript)

ตัวดำเนินการ Bitwise ดำเนินการเชิงตรรกะแบบ bit-by-bit

ตัวดำเนินการ คำอธิบาย
a & b Bitwise AND ส่งคืน 1 เมื่อบิตที่ สอดคล้องกันใน a และ b เป็น 1 ส่งคืน 0 เมื่อบิตใดบิตหนึ่งเป็น 0
a | b Bitwise OR ส่งคืน 1 เมื่อบิตที่สอดคล้องกัน ใน a และ b เป็น 1 หรือทั้งสองเป็น 1 ส่งคืน 0 เมื่อทั้งสองบิตเป็น 0
a ^ b Bitwise XOR (exclusive OR) ส่งคืน 1 เมื่อ บิตที่สอดคล้องกันใน a และ b เป็น 1 และบิตอื่นเป็น 0 ส่งคืน 0 เมื่อทั้งสองบิตเป็น 0
~a การปฏิเสธ กลับค่าบิต a
a << n เลื่อนซ้าย เลื่อนบิตใน a ไป ทางซ้าย n ตำแหน่ง ตัดทิ้งบิตที่เลย ไปทางซ้าย และเติมตำแหน่งทางขวาที่ว่างด้วย 0
a >> n เลื่อนขวาโดยเก็บเครื่องหมายไว้ เลื่อนบิต ใน a ไปทางขวา n ตำแหน่ง ตัดทิ้งบิตที่เลยไปทางขวา และเติมตำแหน่งทางซ้าย ที่ว่างด้วย 0 ยกเว้นบิตซ้ายสุดใน a ที่จะถูก เก็บค่าไว้
a >>> n เลื่อนขวา เลื่อนบิตใน a ไป ทางขวา n ตำแหน่ง ตัดทิ้งบิตที่เลย ไปทางขวา และเติมตำแหน่งทางซ้ายที่ว่างด้วย 0

การใช้งาน

ตัวดำเนินการเชิงตรรกะ bitwise ถือว่า ตัวถูกดำเนินการ และผลลัพธ์เป็นชุดลำดับ 32 บิต (เหมือนจำนวนเต็ม)

AND, OR และ XOR ดำเนินการกับบิตที่สอดคล้องกันในตัวถูกดำเนินการและ ผลลัพธ์ บิต 0 ของตัวถูกดำเนินการแรกรวมกับบิต 0 ของตัวถูกดำเนินการ ที่สองเพื่อสร้างบิต 0 ของผลลัพธ์ บิต 1 ของตัวถูกดำเนินการแรก รวมกับบิต 1 ของตัวถูกดำเนินการที่สองเพื่อสร้างบิต 1 ของ ผลลัพธ์ และต่อไปตามลำดับ

ตัวดำเนินการนิเสธดำเนินการกับบิตที่ สอดคล้องกันในตัวถูกดำเนินการ และผลลัพธ์

ตัวอย่าง

ตัวอย่างนี้ใช้ตัวดำเนินการ bitwise กับค่าจำนวนเต็ม 9, 5 และ -9 เป็นตัวถูกดำเนินการ จำนวนเต็ม 9 มีบิตคอนฟิกูเรชัน 1001 โดยนำหน้าด้วยศูนย์ 28 ตัว จำนวนเต็ม 5 มีบิตคอนฟิกูเรชัน 0101 นำหน้า ด้วยศูนย์ 28 ตัว จำนวนเต็ม -9 มีบิตคอนฟิกูเรชัน 0111 นำหน้า ด้วยหนึ่ง 28 ตัว
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var a = 9; // 0x00000009 bin 0...1001
var b = 5; // 0x00000005 bin 0...0101

p("a & b = " + (a & b)); // 1 0x00000001 bin 0...0001
p("a | b = " + (a | b)); // 13 0x0000000D bin 0...1101
p("a ^ b = " + (a ^ b)); // 12 0x0000000C bin 0...1100
p("~a = " + (~a)); // -10 0xFFFFFFF6 bin 1...0110
p("a << 2 = " + (a << 2)); // 36 0x00000024 0...100100
p("a >> 2 = " + (a >> 2)); // 2 0x00000002 0...0010
p("a >>> 2 = " + (a >>> 2)); // 2 0x00000002 0...0010
p("a >> 2 = " + (-a >> 2)); // -3 0xFFFFFFFD 1...1101
	// -9 is 1...0111 >> 2 = 1...1101

ตัวอย่างนี้แสดง ฟังก์ชันที่รับจำนวนเต็มเป็นพารามิเตอร์ และส่งคืนสตริง ที่เทียบเท่าในรูปแบบไบนารี โดยเลื่อนบิตหนึ่งทีละครั้งไปทาง ขวาและเปรียบเทียบบิตขวาสุดกับ 1 (บิต on) เพื่อสร้าง ค่าส่งคืน

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function binaryString(n) {
	var nn = n;
	var ss = "";
	for(var i = 0; i < 32; i++) {
		ss = (1 & nn) + ss;
		nn = nn >> 1;
	}
	return ss;
}

p(binaryString(1));
p(binaryString(15));
p(binaryString(128));
p(binaryString(255));
p(binaryString(4096));

ตัวอย่างนี้แสดงฟังก์ชันที่รับ จำนวนเต็มเป็นพารามิเตอร์ และส่งคืนสตริงเทียบเทียบเป็นเลขฐานสิบหก โดยเลื่อนบิตครั้งละสี่บิตไปทางขวา และคำนวณ ค่าเทียบเท่าเลขฐานสิบหกของสี่บิตขวาสุดเพื่อสร้างค่า ส่งคืน

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function hexString(n) {
	var nn = n;
	var ss = "";
	for(var i = 0; i < 8; i++) {
		switch(15 & nn) {
			case 15 : ss = "F" + ss; break;
			case 14 : ss = "E" + ss; break;
			case 13 : ss = "D" + ss; break;
			case 12 : ss = "C" + ss; break;
			case 11 : ss = "B" + ss; break;
			case 10 : ss = "A" + ss; break;
			default : ss = (15 & nn) + ss;
		}
		nn = nn >> 4;
	}
	return ss;
}

p(hexString(1));
p(hexString(13));
p(hexString(12));
p(hexString(-10));
p(hexString(36));
p(hexString(2));
p(hexString(2));
p(hexString(-3));
p(hexString(1));
p(hexString(15));
p(hexString(16));
p(hexString(62));
p(hexString(128));
p(hexString(255));
p(hexString(2020));
p(hexString(4095));
p(hexString(4096));

ตัวดำเนินการเชิงตรรกะ (JavaScript)

ตัวดำเนินการเชิงตรรกะดำเนินการทางตรรกะ (บูลีน)
ตัวดำเนินการ คำอธิบาย
expr1 && expr2 (Logical AND) ส่งคืน true ถ้า expr1 และ expr2 ทั้งสอง เป็นจริง
expr1 || expr2 (Logical OR) ส่งคืน true ถ้ามี expr1 หรือ expr2 ค่าใดค่าหนึ่ง เป็นจริง หรือทั้งสองเป็นจริง
! expr1 (Logical NOT) ส่งคืน true ถ้า expr1 เป็น เท็จ มิฉะนั้นส่งคืนเท็จ

ตัวอย่างของนิพจน์ที่สามารถแปลงเป็นเท็จ และนิพจน์ที่ให้ค่าเป็น null, 0, สตริงว่าง (??????)หรือที่ไม่ถูกกำหนด แม้ว่าตัวดำเนินการ && และ || จะสามารถใช้กับตัวถูกดำเนินการ ที่ไม่ใช่ค่า Boolean แต่ตัวดำเนินการยังถูกมองว่าเป็นตัวดำเนินการ Boolean เนื่องจากค่าส่งคืนสามารถแปลงเป็นค่า Boolean เสมอ

การใช้งาน

แนวปฏิบัติที่เหมาะสมที่สุดคือใช้ตัวดำเนินการเชิงตรรกะ กับตัวถูกดำเนินการบูลีน อย่างไรก็ตาม ตัวถูกดำเนินการของชนิดใดๆ สามารถรวมกันได้ กฎข้อจำกัดมีดังนี้:
  • สำหรับ AND ผลลัพธ์เป็นเท็จถ้าตัวถูกดำเนินการแรกเป็นเท็จ มิฉะนั้น ผลลัพธ์เป็นค่าบูลีนของตัวถูกดำเนินการที่สอง
  • สำหรับ OR ผลลัพธ์เป็นจริงถ้าตัวถูกดำเนินการแรกเป็นจริง มิฉะนั้น ผลลัพธ์เป็นค่าบูลีนของตัวถูกดำเนินการที่สอง
  • สำหรับ NOT ผลลัพธ์เป็นจริงถ้าตัวถูกดำเนินการเป็นเท็จ มิฉะนั้น มิฉะนั้นเป็นจริง
ค่าต่อไปนี้เป็นเท็จเมื่อถือเป็นบูลีน ค่า ตัวเลขและสตริงที่ถูกต้องอื่นๆ ถูกถือว่าเป็นจริง
  • 0 หรือ 0.0
  • สตริงว่าง
  • null
  • ไม่ได้นิยามไว้

ตัวอย่าง

ตัวอย่างนี้ใช้ตัวดำเนินการ เชิงตรรกะ โดยแสดงวิธีปฏิบัติต่อตัวถูกดำเนินการที่เป็นบูลีนและ ไม่ใช่บูลีน
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var a = true;
var b = false;
var n0 = 0;
var n1 = 1;
var nm1 = -1;
var x0 = 0.0;
var x1 = 1.1;
var s0 = "";
var s1 = "foo";
var sn = null;

// How different types are treated as boolean
if(a) p("a is true"); else p("a is false"); // true
if(b) p("b is true"); else p("b is false"); // false
if(n0) p("n0 is true"); else p("n0 is false"); // false
if(n1) p("n1 is true"); else p("n1 is false"); // true
if(nm1) p("nm1 is true"); else p("nm1 is false"); // true
if(x0) p("x0 is true"); else p("x0 is false"); // false
if(x1) p("x1 is true"); else p("x1 is false"); // true
if(s0) p("s0 is true"); else p("s0 is false"); // false
if(s1) p("s1 is true"); else p("s1 is false"); // true
if(sn) p("sn is true"); else p("sn is false"); // false

// Using logical values as operands
p("a && a = " + (a && a)); // true
p("a && b = " + (a && b)); // false
p("b && b = " + (b && b)); // false
p("b && a = " + (b && a)); // false
p("a || a = " + (a || a)); // true
p("a || b = " + (a || b)); // true
p("b || b = " + (b || b)); // false
p("b || a = " + (b || a)); // true
p("!a = " + (!a)); // false
p("!b = " + (!b)); // true

// Using non-logical values as operands
p("n1 && n1 = " + (n1 && n1)); // true
p("n1 && n0 = " + (n1 && n0)); // false
p("n0 && n0 = " + (n0 && n0)); // false
p("n0 && n1 = " + (n0 && n1)); // false
p("n1 || n1 = " + (n1 || n1)); // true
p("n1 || n0 = " + (n1 || n0)); // true
p("n0 || n0 = " + (n0 || n0)); // false
p("n0 || n1 = " + (n0 || n1)); // true
p("!n1 = " + (!n1)); // false
p("!n0 = " + (!n0)); // true

ตัวดำเนินการสตริง (JavaScript)

ตัวดำเนินการสตริงต่อค่าเข้าด้วยกัน

ตัวดำเนินการสตริงเป็นดังนี้:
ตัวดำเนินการ คำอธิบาย
string1 + string2 ต่อ string1 และ string2 เข้าด้วยกันเพื่อให้ อักขระเริ่มต้นของ string2 ตามหลังอักขระ ท้ายของ string1
string1 += string2 ต่อ string1 และ string2 เข้าด้วยกัน และกำหนดผลลัพธ์ให้แก่ string1

การใช้งาน

ตัวดำเนินการบวกมหมายถึงการต่อกัน ถ้ามีตัวถูกดำเนินการตัวใดตัหนึ่งเป็นสตริง ตัวอย่างเช่น "foo" + 5 + 1 หมายถึง "foo51" ขณะที่ "foo" + (5 + 1) หมายถึง "foo6" แนวปฏิบัติที่เหมาะสมที่สุดคือ ใส่วงเล็บนิพจน์ที่ไม่ใช่สตริงภายในนิพจน์สตริง

ตัวอย่าง

ตัวอย่างนี้ต่อสองตัวแปรสตริง เข้าด้วยกัน
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var f = "foo";
var b = "bar";
p(f + " " + b); // "foo bar"

ตัวอย่างนี้ต่อ ตัวแปรสตริงสองตัวเข้าด้วยกันและกำหนดค่าผลลัพธ์ให้แก่ตัวแปร

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var f = "foo";
var b = "bar";
var fb = f;
fb += " ";
fb += b;
p(fb); // "foo bar"
ตัวอย่างนี้แสดงวิธีที่ค่า ตัวเลขถูกต่อเข้ากับสตริง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var f = "foo";
var n = 5;
p(f + n); // foo5
p(5 + f); // 5foo
p(f + n + 1); // foo51
p(f + (n + 1)); // foo6

ตัวดำเนินการรายการ (JavaScript)

รายการสามารถถูกประมวลผลเผ็นเอนทิตีโดยตัวดำเนินการที่แน่นอน

ตัวดำเนินการต่อไปนี้ทำงานกับรายการ:
การดำเนินการ คำอธิบาย
list1 + list2 ส่งคืน list1 บวก list2
list1 - list2 ส่งคืน list1 ลบ list2
list1 * list2 ส่งคืน list1 คูณ list2
list1 / list2 ส่งคืน list1 หารด้วย list2

การใช้งาน

รายการหมายถึงตัวแปรหลายค่าเช่น อาร์เรย์

การดำเนินการรายการประมวลผลอิลิเมนต์ที่สอดคล้องกัน ของสองรายการ หรือแต่ละอิลิเมนต์ของหนึ่งรายการกับค่าสเกลาร์ ค่า ส่งคืนจะเป็นรายการ

ถ้าตัวถูกดำเนินการสองรายการมีความยาว ไม่เท่ากัน อิลิเมนต์สุดท้ายของรายการที่สั้นกว่าจะเติมในการดำเนินการ

ตัวอย่าง

ตัวอย่างนี้เพิ่มอิลิเมนต์ ที่สอดคล้องกันสองอาร์เรย์
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

a = new Array(1, 2, 3);
b = new Array(0.1, 0.2, 0.3);
c = a + b;
p(c); // <<<1.1>>>,<<<2.2>>>,<<<3.3>>>

ตัวอย่างนี้เพิ่มอิลิเมนต์ ที่สอดคล้องกันสองอาร์เรย์ อาร์เรย์แรกสั้นกว่าดังนั้นอาร์เรย์สุดท้ายจะเติมใน การดำเนินการ

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

a = new Array(1, 2, 3);
b = new Array(0.1, 0.2, 0.3, 0.4, 0.5);
c = a + b;
p(c); // <<<1.1>>>,<<<2.2>>>,<<<3.3>>>,<<<3.4>>>,<<<3.5>>>

ตัวอย่างนี้เพิ่มค่าสเกลาร์ให้แก่แต่ละอิลิเมนต์ของ อาร์เรย์

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

a = new Array(1, 2, 3);
c = a + 0.01;
p(c); // <<<1.01>>>,<<<2.01>>>,<<<3.01>>>

ตัวดำเนินการพิเศษ (JavaScript)

จำนวนตัวดำเนินการพิเศษที่มีอยู่

ตัวดำเนินการพิเศษมีดังนี้:
ตัวดำเนินการ คำอธิบาย
condition ? expr1 : expr2 ส่งคืนค่าของ expr1 ถ้า condition เป็น จริง หรือค่าของ expr2 ถ้า condition เป็น เท็จ ตัวดำเนินการนี้สามารถใช้เป็นช็อตคัตสำหรับข้อความสั่ง if
expr1 , expr2 หาค่าทั้งสองนิพจน์ และส่งคืนค่า ของ expr2 ตัวดำเนินการนี้สามารถใช้เพื่อรวมหลาย นิพจน์ในหนึ่งข้อความสั่ง โดยทั่วไป var และ for
delete objectName ลบ objectName ส่งคืน ค่าจริงถ้าการลบสำเร็จ มิฉะนั้น ส่งคืนค่าเท็จ การพยายาม เข้าถึงอ็อบเจ็กต์ที่ลบจะทำให้เกิดข้อผิดพลาดรันไทม์ อ็อบเจ็กต์รวม ตัวแปร
delete objectName.property ลบคุณสมบัติที่ผู้ใช้กำหนดเองของ objectName (ไม่ใช่ คุณสมบัติที่กำหนดไว้ล่วงหน้า) ตั้งค่าคุณสมบัติเป็นไม่กำหนด และส่งคืน ค่าจริงถ้าการลบสำเร็จ มิฉะนั้น ส่งคืนค่าเท็จ
delete property เหมือนกับ delete objectName.property แต่ ใช้เป็นส่วนหนึ่งของข้อความสั่ง with
delete objectName[index] ห้ามใช้ เมื่อต้องการ "ลบ" อิลิเมนต์ของอาร์เรย์ กำหนดค่า undefined ให้แก่อิลิเมนต์อาร์เรย์
function(param, param, ...) { statements } ประกาศฟังก์ชันแบบไม่ระบุชื่อในนิพจน์
function name(param, param, ...) { statements } ประกาศฟังก์ชันที่มีชื่อในนิพจน์
objectName = new objectType(param, param, ...) สร้างอ็อบเจ็กต์จากชนิดอ็อบเจ็กต์ในตัว หรือที่ ผู้ใช้กำหนดเอง
this อ้างถึงอ็อบเจ็กต์ที่สร้างการเรียกทำงาน ถ้าคุณเรียกใช้ฟังก์ชัน this ภายในฟังก์ชัน อ้างถึงอ็อบเจ็กต์ที่เรียกใช้ ถ้าคุณสร้างอ็อบเจ็กต์จากฟังก์ชัน this ภายใน ฟังก์ชันอ้างอิงฟังก์ชัน
this.propertyName อ้างอิงคุณสมบัติ (ตัวแปร) ของอ็อบเจ็กต์ ที่สร้างการเรียกทำงาน
typeof operand ส่งคืนสตริงที่ระบุชนิดของ ตัวถูกดำเนินการ ตัวถูกดำเนินการสามารถเป็น object, property, variable และ literal ชนิดทั่วไปได้แก่ number, string, boolean, object, function และ null
typeof(operand) เหมือนกับ typeof operand
void expression หาค่านิพจน์โดยไม่ส่งคืน ค่า
void(expression) เหมือนกับ void expression
object.property อ้างอิงคุณสมบัติอ็อบเจ็กต์ (ตัวแปร) ชื่อ คุณสมบัติต้องเป็นตัวบ่งชี้ที่ถูกต้อง
object["property"]

object['property']

อ้างอิงคุณสมบัติอ็อบเจ็กต์ (ตัวแปร) ชื่อ คุณสมบัติสามารถเป็นสตริงใดๆ

การใช้งาน

เมื่อต้องการกำหนดชนิดอ็อบเจ็กต์ สร้างฟังก์ชัน สำหรับชนิดอ็อบเจ็กต์ที่ระบุชื่อ คุณสมบัติ และเมธอดของอ็อบเจ็กต์ อ็อบเจ็กต์สามารถมีคุณสมบัติที่ตัวเองเป็นอ็อบเจ็กต์อื่น

ตัวดำเนินการ in และ instanceof ไม่ได้รับการสนับสนุนในฝั่งเซิร์ฟเวอร์

ตัวอย่าง

ตัวอย่างนี้พิมพ์สตริงหนึ่งหรือ อีกสตริงหนึ่งขึ้นอยู่กับเงื่อนไข
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

// Test true path
var n = 5;
p(n > 0 ? "n is greater than 0" : "n is not greater than 0");

// Test false path
n = -1;
p(n > 0 ? "n is greater than 0" : "n is not greater than 0");

// Same as ...
if(n > 0)
	p("n is greater than 0");
else
	p("n is not greater than 0");

ตัวอย่างนี้แสดงสถานการณ์ที่มี เครื่องหมายจุลภาคสามตัว สถานการณ์แรกไม่เป็นประโยชน์ แต่สองสถานการณ์หลัง มีประโยชน์

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

p(0, -1, 1); // prints 1

var n = 0, m = -1, o = 1;
p(n); p(m); p(o); // prints 0 -1 1

for(var i = 0, j = 1; i < 5; i++, j++) {
	p("i = " + i + " and j = " + j);
} // prints i = 0-4 and j = 1-5

ตัวอย่างนี้ลบ อ็อบเจ็กต์ Number ความพยายามเข้าถึงอ็อบเจ็กต์หลังการลบเป็นผลให้ เกิดข้อผิดพลาดรันไทม์

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

try {
	var num = new Number(2.4);
	p(num.toFixed(8));
	if(delete num) p("num deleted"); else p("num not deleted");
	p(num.toFixed(8));
} catch(e) {
	p(e);
}

ตัวอย่างนี้สร้างคุณสมบัติสำหรับอ็อบเจ็กต์ Number จากนั้นลบอ็อบเจ็กต์

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

try {
	var num = new Number(2.4);
	p(num.toFixed(8));
	num.myprop = 5;
	p(num.myprop);
	if(delete num.myprop) p("num.myprop deleted");
		else p("num.myprop not deleted");
	p(num.toFixed(8));
	if(num.myprop == undefined) p("undefined"); else ("notundefined");
} catch(e) {
	p(e);
}

ตัวอย่างนี้แสดงการสร้างและการเรียกใช้ ฟังก์ชันแบบไม่ระบุชื่อ

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

foo = function(param1, param2, param3) {
	p("param1 = " + param1);
	p("param2 = " + param2);
	p("param3 = " + param3);
}

foo(1, 2, 3);

ตัวอย่างนี้แสดงการสร้างและการเรียกใช้ฟังก์ชัน ที่ระบุชื่อตามตัวแปรที่กำหนด และตามชื่อ

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

foo = function bar(param1, param2, param3) {
	p("param1 = " + param1);
	p("param2 = " + param2);
	p("param3 = " + param3);
}

foo(1, 2, 3);
bar(1, 2, 3);

ตัวอย่างนี้แสดงวิธีสร้างอ็อบเจ็กต์สำหรับชนิดในตัว และที่ผู้ใช้กำหนดเอง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

n = new Number(2.4);
p("n = " + n.toFixed(8));

// Create function for user-defined object
// Here "this" means the user-defined object
function myobj(param1, param2, param3) {
	this.prop1 = param1;
	this.prop2 = param2;
	this.prop3 = param3;
}

m = new myobj(1, 2, 3);
p("m.prop1 = " + m.prop1);
p("m.prop2 = " + m.prop2);
p("m.prop3 = " + m.prop3);

ตัวอย่างนี้แสดง รูปแบบจุดและวงเล็บเหลี่ยมสำหรับคุณสมบัติ

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function f() {
	this.s = "DOT_S";
}

var ff = new f();
p("ff.s = " + ff.s); // <<<ff.s = DOT_S>>>
p("ff[\"s\"] = " + ff["s"]); // <<<ff["s"] = DOT_S>>>

ฟังก์ชันระดับบนสุด (JavaScript)

ฟังก์ชันระดับบนสุดไม่สัมพันธ์กับอ็อบเจ็กต์ ในข้อมูลจำเพาะ ECMA ฟังก์ชันเหล่านี้เป็นคุณสมบัติและเมธอด ของอ็อบเจ็กต์โกลบอล

ตารางต่อไปนี้สรุปฟังก์ชันระดับบนสุด
ฟังก์ชันระดับบนสุด คำอธิบาย
print พิมพ์สตริงไปยังล็อกไฟล์
_dump พิมพ์การแทนค่าสตริงของอ็อบเจ็กต์ในล็อก ไฟล์
eval หาค่านิพจน์หรือข้อความสั่ง
isNaN หาค่าอาร์กิวเมนต์เพื่อพิจารณาว่าเป็นตัวเลข หรือไม่
parseFloat วิเคราะห์คำอาร์กิวเมนต์สตริง และส่งคืนเลข ทศนิยม
parseInt วิเคราะห์คำอาร์กิวเมนต์สตริง และส่งคืนเลขจำนวนเต็ม

_dump (JavaScript)

พิมพ์การแทนค่าสตริงของอ็อบเจ็กต์ในล็อก ไฟล์

ไวยากรณ์

_dump(object)
พารามิเตอร์ คำอธิบาย
object สตริงที่มีข้อมูลเกี่ยวกับ และ ถ้าเป็นไปได้เป็นการแทนที่สตริงของอ็อบเจ็กต์

การใช้งาน

ล็อกคือ console.log บน เซิร์ฟเวอร์ (ตัวอย่างเช่น C:\Notes\Data\IBM_TECHNICAL_SUPPORT\console.log)

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดง การดัมพ์อ็อบเจ็กต์ในตัวบางอ็อบเจ็กต์
n = new Number(-1);
b = new Boolean(true);
s = new String("foobar");
print("<<<dump follows>>>");
_dump(n); // Number=-1
_dump(b); // Boolean=true
_dump(s); // String=foobar
print("<<<dump ends>>>");

ตัวอย่างนี้แสดง การดัมพ์อ็อบเจ็กต์ผู้ใช้

function mytype() {
	this.mytype = "foobar";
}

myobj = new mytype();
print("<<<dump follows>>>");
_dump(myobj); // mytype: string=foobar
print("<<<dump ends>>>");

eval (JavaScript)

หาค่านิพจน์หรือข้อความสั่ง

ไวยากรณ์

eval(string)
พารามิเตอร์ คำอธิบาย
string นิพจน์ หรืออย่างน้อยหนึ่งข้อความสั่งที่อาจ เลือกลงท้ายด้วยนิพจน์ สตริงสามารถมีชื่อของอ็อบเจ็กต์ คุณสมบัติ และตัวแปรที่มีอยู่

การใช้งาน

ฟังก์ชันนี้เรียกใช้งานข้อความสั่ง ถ้ามี จากนั้นส่งคืนค่าของนิพจน์ ถ้ามี

คุณไม่ ต้องใช้ eval เพื่อหาค่านิพจน์เชิงคำนวณ ที่ฝังอยู่ คำสั่งนี้เกิดขึ้นโดยอัตโนมัติ อย่างไรก็ตาม คุณอาจบันทึก นิพจน์เชิงคำนวณเป็นสตริง และใช้ eval เพื่อ จัดหาค่าให้ภายหลัง

ตัวอย่าง

ตัวอย่างนี้สร้างตัวแปรสตริง ที่มีนิพจน์เชิงคำนวณ จากนั้นหาค่านิพจน์ภายหลัง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var e = "x + y";
var x = 1;
var y = 2;
var z = eval(e);
p(z); // 3

ตัวอย่างนี้สร้างตัวแปรสตริงที่มี สองข้อความสั่ง จากนั้นหาค่า ( เรียกใช้งาน) ข้อความสั่งภายหลัง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var e = "var x=1, y=2; z = x + y";
eval(e);
p(z); // 3

ตัวอย่างนี้สร้างตัวแปรสตริงที่มี ข้อความสั่ง และนิพจน์ จากนั้นหาค่าภายหลัง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var e = "var x=1, y=2; x + y";
z = eval(e);
p(z); // 3

isNaN (JavaScript)

พิจารณาว่าผลลัพธ์ของสตริงถูกวิเคราะห์คำโดย parseInt หรือ parseFloat เป็นหมายเลขที่ถูกต้องหรือไม่

ไวยากรณ์

isNaN(testValue)
พารามิเตอร์ คำอธิบาย
testValue ส่งคืนค่าจา parseInt (JavaScript) หรือ parseFloat (JavaScript)

การใช้งาน

ฟังก์ชันนี้ส่งคืนค่าจริงถ้าพารามิเตอร์ ไม่ใช่หมายเลข เป็นเท็จถ้าเป็นตัวเลขที่ถูกต้อง ดูที่ parseInt (JavaScript) และ parseFloat (JavaScript) สำหรับ ตัวอย่าง

parseFloat (JavaScript)

วิเคราะห์คำสตริงและส่งคืนตัวเลขทศนิยม

ไวยากรณ์

parseFloat(string)
พารามิเตอร์ คำอธิบาย
string สตริงที่แทนเลขทศนิยม ในรูปแบบคงที่ หรือเอ็กซ์โปเนนเชียล มีการตัดปลายเกิดขึ้นที่อักขระ ที่ไม่ใช่รูปแบบทศนิยมที่ถูกต้อง ช่องว่างนำหน้า และ ต่อท้ายนั้นถูกต้อง

การใช้งาน

ถ้าอักขระแรกของ string ไม่ถูกต้องสำหรับเลขทศนิยม ผลัพธ์จะเป็นค่า NaN ดูที่ isNaN (JavaScript)

ตัวอย่าง

ตัวอย่างนี้สร้างเลข ทศนิยม และทดสอบค่าเพื่อให้แน่ใจว่าเป็นตัวเลขที่ถูกต้อง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var x = parseFloat("3.14");
if (isNaN(x))
	p("x is not a number");
else
	p("x = " + x);
// <<<x = 3.14>>>

var x = parseFloat("314e-2");
if (isNaN(x))
	p("x is not a number");
else
	p("x = " + x);
// <<<x = 3.14>>>

var x = parseFloat("0.0314e+2");
if (isNaN(x))
	p("x is not a number");
else
	p("x = " + x);
// <<<x = 3.14>>>

var x = parseFloat("f0.0314e+2");
if (isNaN(x))
	p("x is not a number");
else
	p("x = " + x);
// <<<x is not a number>>>

parseInt (JavaScript)

วิเคราะห์คำสตริงและส่งคืนอเลขจำนวนเต็มของรากหรือฐาน ที่ระบุ

ไวยากรณ์

parseInt(string, radix)
พารามิเตอร์ คำอธิบาย
string สตริงที่แทนเลขจำนวนเต็มของราก ที่ระบุ ระบุตัวเลขมากก 9 เป็นตัวอักษร
radix (ทางเลือก) รากของเลขจำนวนเต็ม ดีฟอลต์ คือ 10

การใช้งาน

ถ้า string ไม่สามาร แปลงเป็นเลขจำนวนเต็มในรากที่ระบุ ผลลัพธ์จะเป็น ค่า NaN ดูที่ isNaN (JavaScript)

ตัวอย่าง

ตัวอย่างนี้สร้างเลขจำนวนเต็มจาก สตริงในรากที่ 10, 8 และ 16 และทดสอบเลขเหล่านั้นพื่อให้แน่ใจว่าเป็น ตัวเลขที่ถูกต้อง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var i = parseInt("25");
if (isNaN(i))
	p("i is not a number");
else
	p("i = " + i);
// i = 25
	
var i = parseInt("25", 8);
if (isNaN(i))
	p("i is not a number");
else
	p("i = " + i);
// i = 21

var i = parseInt("25", 16);
if (isNaN(i))
	p("i is not a number");
else
	p("i = " + i);
// i = 37

var i = parseInt("25x");
if (isNaN(i))
	p("i is not a number");
else
	p("i = " + i);
// i is not a number

var i = parseInt("ff", 16);
if (isNaN(i))
	p("i is not a number");
else
	p("i = " + i);
// i = 255

print (JavaScript)

พิมพ์สตริงไปยังล็อกไฟล์

ไวยากรณ์

print(string)
พารามิเตอร์ คำอธิบาย
string สตริงใดๆ การแปลงเกิดขึ้นถ้าต้องการ

การใช้งาน

ล็อกคือ console.log บน เซิร์ฟเวอร์ (ตัวอย่างเช่น C:\Notes\Data\IBM_TECHNICAL_SUPPORT\console.log)

ตัวอย่าง

ตัวอย่างต่อไปนี้กำหนดฟังก์ชัน ที่พิมพ์ไปยังล็อกไฟล์
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function f(par1) {
	p("par1 = " + par1);
}

p("Call function f");
f(-1);

@Functions (JavaScript)

@Functions เลียนแบบส่วนที่คล้ายกันใน Notes

ไวยากรณ์แตกต่างดังนี้:
  • ชื่อต้องมีขนาดตัวพิมพ์ตรงกัน
  • พารามิเตอร์จะถูกคั่นด้วยเครื่องหมายจุลภาค ไม่ใช่เซมิโคลอน

@Abs (JavaScript)

ส่งคืนค่าสัมบูรณ์ (ไม่มีเครื่องหมาย) ของตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Abs(value:double) : double
พารามิเตอร์ คำอธิบาย
value จำนวนหรืออาร์เรย์ของตัวเลข
ค่าส่งคืน คำอธิบาย
double ค่าสัมบูรณ์ของจำนวนหรือแต่ละจำนวน ในอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้ส่งคืนรากที่สอง ของค่าสัมบูรณ์
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function sq(n) {
	return(Math.sqrt(@Abs(n)));
}

p("sq of 9 = " + sq(9));
p("sq of -9 = " + sq(-9));

This example returns the positive difference between two numbers.

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function diff(n1, n2) {
	return(@Abs(n1 - n2));
}

p("diff(15, 5) = " + diff(15, 5));
p("diff(5, 15) = " + diff(5, 15));
p("diff(-15, 5) = " + diff(-15, -5));
// all result in 10

@Abstract (JavaScript)

คำย่อเนื้อหาของฟิลด์

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Abstract(keywords:string, size:int, beginText:string, bodyFields:string) : string
พารามิเตอร์ คำอธิบาย
keywords Directives สำหรับการสร้าง abstract ระบุ หลายคีย์เวิร์ดในอาร์เรย์ ดูส่วนการใช้งานสำหรับคำอธิบาย ของคีย์เวิร์ด
size จำนวนอักขระใน abstract สูงสุด เนื้อหา ที่เกินจะถูกตัดปลาย ข้อมูลจำเพาะ 0, null หรือสตริงว่าง หมายถึงไม่มีอักขระ
beginText ข้อความที่จะใส่เมื่อเริ่มต้น abstract ข้อมูลจำเพาะของสตริงว่างหมายถึงไม่มีข้อความเริ่มต้น
bodyFields XPath ของข้อมูลที่สัมพันธ์กับฟิลด์ ระบุหลายฟิลด์ในอาร์เรย์
ค่าส่งคืน คำอธิบาย
string Abstract

การใช้งาน

เมื่อเริ่มต้น abstract คือเนื้อหา ของ bodyFields คีย์เวิร์ดถูกใช้กับ abstract ตามลำดับ คีย์เวิร์ดเป็นดังนี้ คีย์เวิร์ดต้องเหมือนกันทุกประการ รวมถึงวงเล็บเหลี่ยม ยกเว้นขนาดตัวพิมพ์
คีย์เวิร์ด คำอธิบาย
[TRYFIT] พยายามทำให้ abstract (ที่ตำแหน่ง ปัจจุบันของการประมวลผล) พอดีกับจำนวนอักขระที่ size อนุญาต ถ้า abstract พอีด การประมวลผลหยุดทำงาน และ abstract เท่าที่มีอยู่ จะถูกส่งคืน
[ABBREV] ใช้นำหน้าคีย์เวิร์ด [DROPVOWELS], [DROPFIRSTVOWEL], [TRIMPUNCT] และ [TRIMWHITE] สำหรับ abstract
[DROPVOWELS] ตัดสระทั้งหมดออกจาก abstract ยกเว้นสระ ที่เริ่มต้นคำ เว้น [DROPFIRSTVOWEL] แสดง ด้วย ใช้ที่คีย์เวิร์ด [ABBREV] ถัดไป
[DROPFIRSTVOWEL] ตัดสระที่เริ่มต้นคำจาก abstract ต้องใช้ข้อมูลจำเพาะของ [DROPVOWELS] ใช้ที่ คีย์เวิร์ด [ABBREV] ถัดไป
[TRIMPUNCT] ลบ white space รอบเครื่องหมายวรรคตอนทั้งหมด ใช้ที่คีย์เวิร์ด [ABBREV] ถัดไป
[TRIMWHITE] ลบ white space ส่วนเกิน ใช้ที่ คีย์เวิร์ด [ABBREV] ถัดไป
[RULE1] สร้างคีย์เวิร์ดต่อไปนี้: [TRYFIT], [TRIMPUNCT], [TRIMWHITE], [ABBREV], [TRYFIT], [DROPVOWELS], [ABBREV]
[RULE2] สร้างคีย์เวิร์ดต่อไปนี้: [TRYFIT], [TRIMPUNCT], [TRIMWHITE], [ABBREV]
[RULE3] เหมือนกับ [RULE1]

ตัวอย่าง

ตัวอย่างต่อไปนี้คือสูตร ค่าสำหรับฟิลด์ที่คำนวณ ซึ่งมีผลต่อสองฟิลด์ที่โยงกับ อิลิเมนต์ข้อมูล field4 (string) และ field5 (integer) โดยค่าที่ต่อกันกันจะเป็นดังนี้:
given current inputs, the total   is   99

ตัวอย่าง นี้ใช้ [RULE2] ในสถานการณ์ที่ เนื้อหาอินพุตพอดี

var fields = @List("//field4", "//field5");
@Abstract("[RULE2]", 64, "Total: ", fields);

ผลลัพธ์ เป็นดังนี้ สิ่งสำคัญคือ abstract เหมือนกับอินพุต

Total: given current inputs, the total   is   99

ตัวอย่าง นี้ใช้ [RULE1] ในสถานการณ์ที่ จำเป็นต้องตัดและดร็อปสระ

var fields = @List("//field4", "//field5");
@Abstract("[RULE1]", 32, "Total: ", fields);

ผลลัพธ์ เป็นดังนี้:

RULE1 Ttl:gvn crrnt inpts,th ttl is 99

ตัวอย่าง นี้ดร็อปสระ ดร็อปสระตัวแรก และตัดทิ้ง สตริงไม่มีข้อความ เริ่มต้น

var keywords = @List("[DROPVOWELS]", "[DROPFIRSTVOWEL]",
	"[TRIMWHITE]",  "[TRIMPUNCT]", "[ABBREV]");
var fields = @List("//field4", "//field5");
@Abstract(keywords, 64, "", fields);

ผลลัพธ์ เป็นดังนี้:

gvn crrnt npts,th ttl s 99 

@Adjust (JavaScript)

ปรับเวลาและวันที่ด้วยปี เดือน วัน ชั่วโมง นาที และ/หรือวินาที

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Adjust(time:Date, years:int, months:int, days:int, hours:int, minutes:int, seconds:int) : Date

@Adjust(time:Date, years:int, months:int, days:int, hours:int, minutes:int, seconds:int, keywords:string) : Date

พารามิเตอร์ คำอธิบาย
time เวลาและวันที่
years จำนวนปี
months จำนวนเดือน
days จำนวนวัน
hours จำนวนชั่วโมง
minutes จำนวนนาที
seconds จำนวนวินาที
keywords [InLocalTime] ปรับเวลา ออมแสง ถ้าการปรับข้ามขอบเขตการออมแสง และการออมแสงมีผลอยู่ การปรับจะเป็นการเพิ่ม หรือลดวันที่ให้ค่าชั่วโมงเหมือนเดิม มิฉะนั้นจะไม่มีการปรับ สำหรับการออมแสงเกิดขึ้น คีย์เวิร์ดต้องเป็นค่าแน่นอน ยกเว้นขนาดตัวพิมพ์ คีย์เวิร์ดที่ไม่ถูกต้องจะถูกข้าม
ค่าส่งคืน คำอธิบาย
Date เวลาและวันที่ที่ปรับ

การใช้งาน

การปรับสามารถเป็นบวกหรือลบ ทศนิยมถูกตัดทิ้ง

ศูนย์ (0) หรือ null หมายถึงไม่มีการปรับ

การเพิ่ม หรือการลดที่โอเวอร์โฟลว์ฟิลด์ที่ใหญ่กว่าถัดไป และปรับ ค่าฟิลด์กลับมาอยู่ในขอบเขต

ตัวอย่าง

ตัวอย่างนี้ทำเครื่องหมายเอกสารปัจจุบัน OBSOLETE ถ้า วันที่และเวลาปัจจุบันเกินวันที่และเวลาการสร้างที่ปรับ ไปข้างหน้า 30 วัน
var s = "ACTIVE";
var xdate = @Adjust(@Created(), null, null, 30, null, null, null, "[InLocalTime]");
if(@Now() > xdate) s = "OBSOLETE";
return s;

ตัวอย่างนี้เหมือนกับตัวอย่างก่อนหน้านี้ แต่ ไม่ปรับเวลาออมแสง

var s = "ACTIVE";
var xdate = @Adjust(@Created(), null, null, 30, null, null, null);
if(@Now() > xdate) s = "OBSOLETE";
return s;

@AttachmentLengths (JavaScript)

ส่งคืนความยาวเป็นไบต์ของไฟล์ที่แนบกับ เอกสารปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@AttachmentLengths() : any
ค่าส่งคืน คำอธิบาย
any อาร์เรย์ของจำนวนเต็มที่มีความยาวไฟล์ หรือสตริงว่าง ถ้าเอกสารปัจจุบันไม่มีสิ่งที่แนบ

ตัวอย่าง

ตัวอย่างนี้คือค่าสำหรับฟิลด์ที่ คำนวณ โดยส่งคืนจำนวนไฟล์แนบในเอกสารปัจจุบัน บวกกับชื่อ ความยาว และเวลาแก้ไขของสิ่งที่แนบ
var s = "Attachments (" + @Attachments() + "):\n";
for(var i = 0; i < @Attachments(); i++) {
	s = s +
	@AttachmentNames()[i] + " (" +
	@AttachmentLengths()[i] + " bytes) " + 
	@AttachmentModifiedTimes()[i] + "\n";
}
return s;

@AttachmentModifiedTimes (JavaScript)

ส่งคืนวันที่และเวลาที่แก้ไขของไฟล์ที่แนบ ในเอกสารปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@AttachmentModifiedTimes() : any
ค่าส่งคืน คำอธิบาย
any อาร์เรย์ของวันที่และเวลาที่มีเวลา แก้ไข หรือสตริงว่างถ้าเอกสารปัจจุบันไม่มีสิ่งที่แนบ

ตัวอย่าง

ตัวอย่างนี้คือค่าสำหรับฟิลด์ที่ คำนวณ โดยส่งคืนจำนวนไฟล์แนบในเอกสารปัจจุบัน บวกกับชื่อ ความยาว และเวลาแก้ไขของสิ่งที่แนบ
var s = "Attachments (" + @Attachments() + "):\n";
for(var i = 0; i < @Attachments(); i++) {
	s = s +
	@AttachmentNames()[i] + " (" +
	@AttachmentLengths()[i] + " bytes) " + 
	@AttachmentModifiedTimes()[i] + "\n";
}
return s;

@AttachmentNames (JavaScript)

ส่งคืนชื่อของไฟล์ที่แนบกับเอกสาร ปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@AttachmentNames() : any
ค่าส่งคืน คำอธิบาย
any อาร์เรย์ของสตริงที่มีชื่อไฟล์ หรือสตริงว่าง ถ้าเอกสารปัจจุบันไม่มีสิ่งที่แนบ

ตัวอย่าง

ตัวอย่างนี้คือค่าสำหรับฟิลด์ที่ คำนวณ โดยส่งคืนจำนวนไฟล์แนบในเอกสารปัจจุบัน บวกกับชื่อ ความยาว และเวลาแก้ไขของสิ่งที่แนบ
var s = "Attachments (" + @Attachments() + "):\n";
for(var i = 0; i < @Attachments(); i++) {
	s = s +
	@AttachmentNames()[i] + " (" +
	@AttachmentLengths()[i] + " bytes) " + 
	@AttachmentModifiedTimes()[i] + "\n";
}
return s;

@Attachments (JavaScript)

ส่งคืนจำนวนไฟล์ที่แนบกับเอกสารปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Attachments() : int
ค่าส่งคืน คำอธิบาย
int จำนวนไฟล์ที่แนบ

ตัวอย่าง

ตัวอย่างนี้คือค่าสำหรับฟิลด์ที่ คำนวณ โดยส่งคืนจำนวนไฟล์แนบในเอกสารปัจจุบัน บวกกับชื่อ ความยาว และเวลาแก้ไขของสิ่งที่แนบ
var s = "Attachments (" + @Attachments() + "):\n";
for(var i = 0; i < @Attachments(); i++) {
	s = s +
	@AttachmentNames()[i] + " (" +
	@AttachmentLengths()[i] + " bytes) " + 
	@AttachmentModifiedTimes()[i] + "\n";
}
return s;

@Author (JavaScript)

ส่งคืนชื่อของผู้เขียนของเอกสารปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Author() : any
ค่าส่งคืน คำอธิบาย
any ชื่อผู้เขียน

@Begins (JavaScript)

พิจารณาว่าสตริงขึ้นต้นด้วยซับสตริงหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Begins(value:string,subString:string) : int
พารามิเตอร์ คำอธิบาย
value สตริงที่จะถูกตรวจสอบ
subString สตริงย่อยที่จะถูกตรวจสอบ
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเป็นจริง มิฉะนั้น 0

การใช้งาน

ฟังก์ชันนี้คำนึงถึงขนาดตัวพิมพ์

ตัวอย่าง

ตัวอย่างนี้ตรวจสอบว่าซับสตริง เริ่มต้นสตริงสองครั้ง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var s1 = "Now is the time.";
var s2 = "N";

if(@Begins(s1, s2) == @True()) // returns 1
	p("String s1 begins with " + s2);
else
	p("String s1 does not begin with " + s2);

s2 = "n";

if(@Begins(s1, s2) == @True()) // returns 0
	p("String s1 begins with " + s2);
else
	p("String s1 does not begin with " + s2);

@Char (JavaScript)

ส่งคืนอักขระที่สอดคล้องกับค่า Unicode

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Char(code:int) : string
พารามิเตอร์ คำอธิบาย
code หมายเลข Unicode
ค่าส่งคืน คำอธิบาย
string อักขระที่แสดงโดยหมายเลข Unicode

การใช้งาน

อักขระ Unicode สามารถถูกแสดง ในสตริงด้วยลำดับ escape
ลำดับ Escape หมายเลข Unicode คำอธิบาย
\b 8 แบ็คสเปซ
\t 9 แท็บ
\n 10 ขึ้นบรรทัดใหม่
\f 12 ป้อนกระดาษ
\r 13 ปัดแคร่ขึ้นบรรทัดใหม่

ตัวอย่าง

ตัวอย่างนี้พิมพ์ตัวอักษร A ถึง Z ด้วยตัวพิมพ์ใหญ่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var s = "";
for(var i = 65; i < 91; i++) {
	s = s + @Char(i);
}
p(s);

@ClientType (JavaScript)

ส่งคืนสตริงข้อความเพื่อแยกความแตกต่างระหว่างไคลเอ็นต์ Notes และเว็บเบราว์เซอร์

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@ClientType() : string
ค่าส่งคืน คำอธิบาย
string Notes หรือ Web ขึ้นอยู่กับ สภาวะแวดล้อมรันไทม์

@Contains (JavaScript)

พิจารณาว่าสตริงมีสตริงย่อยหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Contains(value:string, subString:string) : int
พารามิเตอร์ คำอธิบาย
value สตริงที่จะถูกตรวจสอบ
substring สตริงย่อยที่จะถูกตรวจสอบ
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเป็นจริง มิฉะนั้น 0

การใช้งาน

ฟังก์ชันนี้คำนึงถึงขนาดตัวพิมพ์

ตัวอย่าง

ตัวอย่างนี้ตรวจสอบว่าสตริงย่อย ภายในสตริงสองครั้งส่งคืน 1 หรือ 0
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var s1 = "Now is the time.";
var s2 = "is";

if(@Contains(s1, s2) == @True())
	p("String s1 contains with " + s2);
else
	p("String s1 does not contain " + s2);

s2 = "iz";

if(@Contains(s1, s2) == @True())
	p("String s1 contains with " + s2);
else
	p("String s1 does not contain " + s2);

@Count (JavaScript)

ส่งคืนจำนวนรายการในรายการ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Count(list:any) : int
พารามิเตอร์ คำอธิบาย
list รายการที่จะถูกตรวจสอบ
ค่าส่งคืน คำอธิบาย
int จำนวนรายการในลิสต์

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้วนซ้ำจนหมดรายการ
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var citiesArray = new Array("Paris", "Berlin", "London", "Moscow");

for(var i = 0; i < @Count(citiesArray); i++) {
	p(citiesArray[i]);
}

@Created (JavaScript)

ส่งคืนวันที่และเวลาการสร้างของเอกสารปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Created() : Date
ค่าส่งคืน คำอธิบาย
Date วันที่และเวลาการสร้าง

ตัวอย่าง

ตัวอย่างนี้ปรับวันที่สร้าง ของเอกสารปัจจุบันเพื่อทำให้ OBSOLETE หลัง 30 วัน
var s = "ACTIVE";
var xdate = @Adjust(@Created(), null, null, 30, null, null, null, "[InLocalTime]");
if(@Now() > xdate) s = "OBSOLETE";
return s;

@Date (JavaScript)

สร้างวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Date(time:Date) : Date

@Date(years:int, months:int, days:int) : Date

@Date(years:int, months:int, days:int, hours:int, minutes:int, seconds:int) : Date

พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
seconds วินาทีของวันที่และเวลา
minutes นาทีของวันที่และเวลา
hours ชั่วโมงของวันที่และเวลา
days วันของวันที่และเวลา
months เดือนของวันที่และเวลา
years ปีของวันที่และเวลา
ค่าส่งคืน คำอธิบาย
Date วันที่และเวลาใหม่

การใช้งาน

ฟังก์ชันนี้ระบุวันที่และเวลา ดังนี้:
  • ถ้ารายการพารามิเตอร์ระบุอ็อบเจ็กต์ Date ฟังก์ชันนี้ใช้ เฉพาะส่วนของวันที่ และตั้งค่าเวลาเป็น 0 ชั่วโมง
  • ถ้ารายการพารามิเตอร์ระบุปี เดือน และวัน ฟังก์ชัน นี้ตั้งค่าวันที่ตามที่ระบุ และตั้งค่าเวลาเป็น 0 ชั่วโมง
  • ถ้ารายการพารามิเตอร์ระบุปี เดือน วัน ชั่วโมง นาที และวินาที ฟังก์ชันนี้ตั้งค่าวันที่และเวลาตามที่ระบุ

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลาจากอ็อบเจ็กต์ Date
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var now = @Now();
var date1 = @Date(now);
p("Now = " + now); // <<<Now = 4/7/06 4:49 PM>>>
p("Date = " + date1); // <<<Date = 4/7/06 12:00 AM>>>

ตัวอย่าง นี้สร้างวันที่และเวลาโดยใช้วันที่จาก @Today และ ระบุเวลาอย่างแท้จริง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Today();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var today = @Date(year, month, day, 13, 30, 0);
p("Today at 1:30PM = " + today.toLocaleString());

ตัวอย่างนี้สร้างวันที่และเวลา 24 ชั่วโมงก่อน เวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@Day (JavaScript)

ส่งคืนวันจากวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Day(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int วันของวันที่และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@DbColumn (JavaScript)

ส่งคืนค่าของคอลัมน์มุมมอง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@DbColumn(dbName:string, viewName:string, colNumber:int) : any
พารามิเตอร์ คำอธิบาย
dbName อาร์เรย์ของสองอิลิเมนต์ที่อิลิเมนต์แรก คือชื่อของเซิร์ฟเวอร์ และอิลิเมนต์ที่สองคือชื่อของ ฐานข้อมูล คุณสามารถใช้เครื่องหมายคำพูดว่างสำหรับเซิร์ฟเวอร์ปัจจุบัน สำหรับ ฐานข้อมูลปัจจุบัน คุณสามารถใช้เครื่องหมายคำพูดว่างแทนอาร์เรย์ หรือ คุณสามารถใช้อาร์เรย์ที่มีเครื่องหมายคำพูดว่างสำหรับแต่ละอิลิเมนต์
viewName ชื่อของมุมมองในฐานข้อมูล
colNumber หมายเลขของคอลัมน์ในมุมมองเริ่มต้นที่ 1
ค่าส่งคืน คำอธิบาย
any อาร์เรย์ที่มีค่าคอลัมน์

ตัวอย่าง

ตัวอย่างต่อไปนี้คือสูตร การโยงข้อมูลสำหรับกล่องรายการ โดยแสดงคอลัมน์ 1 ของมุมมอง ทั้งหมด ของ foo.nsf
var dbname = new Array("", "foo.nsf");
@DbColumn(dbname, "All", 1)

ตัวอย่างก่อนหน้านี้สามารถเขียน ดังนี้ถ้า foo.nsf เป็นฐานข้อมูลปัจจุบัน

@DbColumn("", "All", 1)

@DbLookup (JavaScript)

ส่งคืนค่าคอลัมน์หรือฟิลด์มุมมองที่สอดคล้องกับ คีย์ที่ตรงกันในคอลัมน์มุมมองที่เรียงลำดับ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@DbLookup(dbName:string, viewName:string, key:string, colNumber:int) : any

@DbLookup(dbName:string, viewName:string, key:string, fieldName:string) : any

@DbLookup(dbName:string, viewName:string, key:string, colNumber:int, keywords:string) : any

@DbLookup(dbName:string, viewName:string, key:string, fieldName:string, keywords:string) : any

พารามิเตอร์ คำอธิบาย
dbName อาร์เรย์ของสองอิลิเมนต์ที่อิลิเมนต์แรก คือชื่อของเซิร์ฟเวอร์ และอิลิเมนต์ที่สองคือชื่อของ ฐานข้อมูล คุณสามารถใช้เครื่องหมายคำพูดว่างสำหรับเซิร์ฟเวอร์ปัจจุบัน สำหรับ ฐานข้อมูลปัจจุบัน คุณสามารถใช้เครื่องหมายคำพูดว่างแทนอาร์เรย์ หรือ คุณสามารถใช้อาร์เรย์ที่มีเครื่องหมายคำพูดว่างสำหรับแต่ละอิลิเมนต์
viewName ชื่อของมุมมองในฐานข้อมูล
key ค่าที่จะจับคู่กับคอลัมน์ที่เรียงลำดับ คอลัมน์แรกในมุมมอง
colNumber หมายเลขของคอลัมน์ในมุมมองเริ่มต้นที่ 1 ถ้าใช้หมายเลขคอลัมน์ ค่าส่งคืนจะถูกนำมาจากคอลัมน์ นี้ในมุมมอง
fieldName ชื่อของไอเท็มในเอกสารในมุมมอง ถ้าใช้ชื่อไอเท็ม ค่าส่งคืนจะนำมาจากไอเท็มนี้ ในเอกสารที่ข้อมูลมุมมองถูกแสดง
keywords อย่างน้อยหนึ่งสตริงที่คั่นด้วยเครื่องหมายจุลภาคที่มี ค่าต่อไปนี้:
  • [FAILSILENT] ส่งคืน "" (สตริง null) แทน ข้อผิดพลาด ถ้าไม่พบคีย์
  • [PARTIALMATCH] ส่งคืนค่าที่ตรงกันถ้าคีย์ตรงกับ อักขระตัวแรกของค่าคอลัมน์
  • [RETURNDOCUMENTUNIQUEID] ส่งคืน UNID ของ เอกสารแทนค่าฟิลด์หรือคอลัมน์
ค่าส่งคืน คำอธิบาย
any อาร์เรย์ที่มีค่าคอลัมน์หรือไอเท็ม

การใช้งาน

สูตรนี้เปรียบเทียบ key กับ ค่าในทรรศนะที่เรียงลำดับคอลัมน์แรกในมุมมอง หรือเมื่อ มีค่าที่ตรงกัน จะส่งคืนอย่างใดอย่างหนึ่ง:
  • ค่าที่สอดคล้องกับคอลัมน์ที่ระบุโดย colNumber
  • อิลิเมนต์ข้อมูลที่ระบุโดย fieldName ใน เอกสารที่สอดคล้องกัน

ตัวอย่าง

ตัวอย่างต่อไปนี้คือสูตร การโยงข้อมูลสำหรับกล่องรายการ กล่องรายการที่แสดงผลมี ค่าจากคอลัมน์ 2 ของ ทั้งหมด โดยค่าที่ สอดคล้องกันในคอลัมน์ที่เรียงลำดับคอลัมน์แรกเป็น blue
@DbLookup(@DbName(), "All", "blue", 2);

ตัวอย่าง ต่อไปนี้คือสูตรการโยงข้อมูลสำหรับกล่องรายการ กล่อง รายการที่แสดงผลมีค่าจากอิลิเมนต์ข้อมูล เรื่อง โดย ค่าที่สอดคล้องกันในคอลัมน์ที่เรียงลำดับคอลัมน์แรกคือ blue

@DbLookup(@DbName(), "All", "blue", "Subject");

@DbName (JavaScript)

ส่งคืนชื่อเซิร์ฟเวอร์และชื่อฐานข้อมูลของฐานข้อมูล ปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@DbName() : string
ค่าส่งคืน คำอธิบาย
string รายการ: รายการแรกในอิลิเมนต์คือชื่อเซิร์ฟเวอร์ อิลิเมนต์ที่สองคือชื่อฐานข้อมูล

ตัวอย่าง

ฟิลด์ที่คำนวณนี้แสดงชื่อฐานข้อมูล และเซิร์ฟเวอร์ของฐานข้อมูลปัจจุบัน
var database = @Subset(@DbName(), -1);
var server = @Name("[CN]", @Subset(@DbName(), 1));
return database + " on " + server

@DbTitle (JavaScript)

ส่งคืนเลเบลของฐานข้อมูลปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@DbTitle() : string
ค่าส่งคืน คำอธิบาย
string เลเบลฐานข้อมูล

ตัวอย่าง

ตัวอย่างนี้ส่งคืนชื่อและ เลเบลของฐานข้อมูลปัจจุบัน
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

p("Database name = " + @DbName());
p("Database label = " + @DbTitle());

@Do (JavaScript)

หาค่าชุดข้อมูลของข้อความสั่ง @function

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Do(statement, ...) : any
พารามิเตอร์ คำอธิบาย
statement @function หรือข้อความสั่ง ที่ถูกต้องใน @function (ตัวอย่างเช่น ข้อความสั่ง กำหนดค่า)
ค่าส่งคืน คำอธิบาย
any ผลลัพธ์ของข้อความสั่งสุดท้าย

ตัวอย่าง

ตัวอย่างนี้คือเหตุการณ์ onBlur สำหรับ กล่องแก้ไขที่โยงกับ field1 โดยแปลงค่าเซลเซียส ใน field1 เป็นค่าฟาเรนไฮต์สำหรับ field2
var n = @GetNumberField("//field1");
// condition
@If(n != "",
	// true path
	@Do(n = 9 / 5 * n,
		@SetNumberField("//field2", n + 32)),
	// false path
	@Do(@SetNumberField("//field1", 0),
		@SetNumberField("//field2", 32)));

@Element (JavaScript)

ส่งคืนอิลิเมนต์ของรายการ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Element(list:any, position:int) : any
พารามิเตอร์ คำอธิบาย
list รายการที่จะถูกตรวจสอบ
position ตำแหน่งของอิลิเมนต์เริ่มต้นที่ 1
ค่าส่งคืน คำอธิบาย
any อิลิเมนต์ของรายการที่ตำแหน่งที่กำหนด

การใช้งาน

รายการเป็นอาร์เรย์

การกำหนดหมายเลขของ อิลิเมนต์เริ่มต้นที่ 1 สำหรับ @ไม่ใช่ 0

ตัวอย่าง

ตัวอย่างนี้วนซ้ำจนหมดรายการ
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }
 
var citiesArray = new Array("Paris", "Berlin", "London", "Moscow");
for(var i = 1; i <= @Elements(citiesArray); i++) {
	p(@Element(citiesArray, i));
}

@Elements (JavaScript)

ส่งคืนจำนวนรายการในรายการ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Elements(list:any) : int
พารามิเตอร์ คำอธิบาย
list รายการที่จะถูกตรวจสอบ
ค่าส่งคืน คำอธิบาย
int จำนวนรายการในลิสต์

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้วนซ้ำจนหมดรายการ
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }
 
var citiesArray = new Array("Paris", "Berlin", "London", "Moscow");
for(var i = 1; i <= @Elements(citiesArray); i++) {
	p(@Element(citiesArray, i));
}

@Ends (JavaScript)

พิจารณาว่สตริงสิ้นสุดด้วยซับสตริงหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Ends(value:string,subString:string) : int
พารามิเตอร์ คำอธิบาย
value สตริงที่จะถูกตรวจสอบ
subString สตริงย่อย
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเป็นจริง มิฉะนั้น 0

การใช้งาน

ฟังก์ชันนี้คำนึงถึงขนาดตัวพิมพ์

ตัวอย่าง

ตัวอย่างนี้ตรวจสอบว่าสตริงย่อย สิ้นสุดด้วยสตริงสองครั้ง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var s1 = "Now is the time.";
var s2 = ".";

if(@Ends(s1, s2) == @True()) // returns 1
	p("String s1 ends with " + s2);
else
	p("String s1 does not end with " + s2);

s2 = "e";

if(@Ends(s1, s2) == @True()) // returns 0
	p("String s1 ends with " + s2);
else
	p("String s1 does not end with " + s2);

@Error (JavaScript)

กำหนดเงื่อนไขข้อผิดพลาดให้แก่ค่า

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Error() : Object
ค่าส่งคืน คำอธิบาย
Object ค่าที่ไม่ถูกกำหนด ค่านี้ใช้ประโยชน์สำหรับ เป็นพารามิเตอร์แก่ @IsError (JavaScript) เท่านั้น

การใช้งาน

อย่าบันทึก @Error() เป็น ค่าอิลิเมนต์

ตัวอย่าง

ตัวอย่างนี้มีฟังก์ชันที่ ส่งคืน @Error() ในกรณีที่แน่นอน ฟังก์ชัน ระดับบนสสุดทดสอบหา @Error()
function getfield(fieldname) {
	var n = @GetField(fieldname);
	@Return(@If(n < 0, @Error(), n > 255, @Error(), n));
}

@If(@IsError(getfield("//field3")),
	"Out of range",
	// else
	getfield("//field3"));

@Explode (JavaScript)

วิเคราะห์สตริงเป็นอิลิเมนต์ในรายการโดยใช้ลิสต์ ที่ระบุ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Explode(value:string) : any

@Explode(value:string, separators:string) : any

@Explode(value:string, separators:string, incEmpties:int) : any

@Explode(value:string, separators:string, incEmpties:int, newLineAsSeparator:int) : any

พารามิเตอร์ คำอธิบาย
value สตริงที่จะถูกแยกวิเคราะห์คำ
separators ชุดข้อมูลของอักขระที่ถือเป็นตัวคั่น อักขระเหล่านี้คั่นอิลิเมนต์ และไม่ปรากฏในเอาต์พุต ตัวคั่นดีฟอลต์คือ ",; " (เครื่องหมายจุลภาค เซมิโคลอน ช่องว่าง) อักขระขึ้นบรรทัดใหม่เป็นตัวคั่นโดยอัตโนมัติ ยกเว้นไม่ถูกรวมโดย พารามิเตอร์สุดท้าย
incEmpties 0 (ดีฟอลต์) เพื่อละเว้นการนำหน้า การเติมท้าย และ ตัวคั่นติดกันหลายตัว หรือ 1 เพื่อแทรกสตริงว่าง (หมายเหตุ: อ็อพชันนี้อาจไม่สามารถประมวลผลอิลิเมนต์ต่อจากตัวคั่นหลายตัว ติดกันดังนั้นจึงไม่แนะนำให้ใช้)
newLineAsSeparator 1 (ดีฟอลต์) เพื่อถือว่าอักขระขึ้นบรรทัดใหม่เป็นตัวคั่น หรือ 0 เพื่อถือว่าเป็นข้อความ
ค่าส่งคืน คำอธิบาย
any รายการผลลัพธ์

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้แตกสตริงออกเป็น รายการโดยใช้ตัวคั่นดีฟอลต์
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var citiesString = new String("Paris,Berlin,London,Moscow");

p(citiesString);
var citiesArray = @Explode(citiesString);
for(var i = 1; i <= @Elements(citiesArray); i++) {
	p(@Element(citiesArray, i));
}
/* Log output
<<<Paris,Berlin,London,Moscow>>>
<<<Paris>>>
<<<Berlin>>>
<<<London>>>
<<<Moscow>>>
*/

ตัวอย่างนี้แตกสตริงออกเป็นรายการโดยใช้ ตัวคั่นที่ระบุ

function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var citiesString = new String("Paris.Berlin.London.Moscow");

p(citiesString);
var citiesArray = @Explode(citiesString, ", ;.");
for(var i = 1; i <= @Elements(citiesArray); i++) {
	p(@Element(citiesArray, i));
}
/* Log output
<<<Paris.Berlin.London.Moscow>>>
<<<Paris>>>
<<<Berlin>>>
<<<London>>>
<<<Moscow>>>
*/

ตัวอย่างนี้แตกสตริงลงในรายการโดยใช้ ตัวคั่นที่ระบุที่ตัดอักขระขึ้นบรรทัดใหม่ออก

function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var citiesString = new String("Paris,Berlin\nLondon,Moscow");

p(citiesString);
var citiesArray = @Explode(citiesString, ", ;.", @False(), @False());
for(var i = 1; i <= @Elements(citiesArray); i++) {
	p(@Element(citiesArray, i));
}
/* Log output
<<<Paris,Berlin
London,Moscow>>>
<<<Paris>>>
<<<Berlin
London>>>
<<<Moscow>>>
*/

@Failure (JavaScript)

ส่งคืนข้อความ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Failure(message : string) : string
ค่าส่งคืน คำอธิบาย
string พารามิเตอร์

การใช้งาน

ใน Notes, @function นี้ถูกใช้ในสูตรการตรวจสอบความถูกต้อง, ซึ่งไม่ได้อยู่ใน XPages

@False (JavaScript)

ส่งคืนตัวเลข 0

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@False() : int
ค่าส่งคืน คำอธิบาย
int ตัวเลข 0

การใช้งาน

สำหรับค่า "โลจิคัล" @functions ใช้ ตัวเลข 1 สำหรับค่าจริง และ 0 สำหรับค่าเท็จ หมายเลข 1 สามารถแสดง ด้วย @True (JavaScript) หรือ @Yes (JavaScript)

หมายเลข 0 สามารถแสดงด้วย @False (JavaScript) หรือ @No (JavaScript)

ห้าใช้ JavaScript ค่า true และ false สำหรับค่า "logical" @function

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธี ทดสอบ @function ที่ส่งคืนค่า "โลจิคัล"
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

if(@IsNewDoc() == @False())
	p("Opening old document");
else
	p("Creating new document");

/* Do not do this
if(!@IsNewDoc)
	p("Opening old document");
else
	p("Creating new document");
*/

@GetField (JavaScript)

ส่งคืนค่าไอเท็มเอกสารที่สัมพันธ์กับ เพจปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@GetField(name:string) : any
พารามิเตอร์ คำอธิบาย
name ชื่อของไอเท็มในเอกสาร Domino ที่โยงกับ XPage ปัจจุบัน
ค่าส่งคืน คำอธิบาย
any ค่าของไอเท็ม

การใช้งาน

ฟังก์ชันนี้ถ่ายโอนเพจปัจจุบัน ไปยังเซิร์ฟเวอร์ก่อนเพื่อบันทึกอินพุตผู้ใช้ล่าสุด

ตัวอย่าง

ฟิลด์ที่คำนวณนี้รับค่า ไอเท็ม เรื่อง ของเอกสารที่สัมพันธ์กับ XPage
@GetField("Subject")

@Hour (JavaScript)

ส่งคืนชั่วโมงจากวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Hour(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int ชั่วโมงของวันที่และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@If (JavaScript)

เรียกใช้งานข้อความสั่งตามการทดสอบแบบมีเงื่อนไข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@If(condition, statement, ..., ..., else) : any
ค่าส่งคืน คำอธิบาย
condition ค่าโลจิคัล ตัวอย่างเช่น n > 0
statement ข้อความสั่ง @function ที่ถูกต้อง จะถูกเรียกใช้งานถ้าเงื่อนไขก่อนหน้าเป็นจริง ใช้ @Do เพื่อ เรียกใช้งานหลายๆ ข้อความสั่ง
else ข้อความสั่ง @function ที่ถูกต้อง จะถูกเรียกใช้งานถ้าไม่มีเงื่อนไขเป็นจริง ใช้ @Do เพื่อ เรียกใช้งานหลายๆ ข้อความสั่ง
any ผลลัพธ์ของข้อความสั่งที่ถูกเรียกใช้งาน

การใช้งาน

พารามิเตอร์ condition และ statement ต้องอยู่เป็นคู่ โดยมีจำนวนคู่เท่าใดก็ได้

เงื่อนไขเป็นจริง ค่าแรกสร้างการเรียกใช้งานของข้อความสั่งที่เป็นคู่ และไม่มีการทดสอบ อื่นใดเกิดขึ้น ถ้าไม่มีเงื่อนไขเป็นจริง ข้อความสั่ง else จะเรียกใช้งาน

ตัวอย่าง

ตัวอย่างนี้คือเหตุการณ์ onBlur สำหรับ กล่องแก้ไขที่โยงกับ field1 โดยแปลงค่าเซลเซียส ใน field1 เป็นค่าฟาเรนไฮต์สำหรับ field2
var n = @GetNumberField("//field1");
// condition
@If(n != "",
	@Do(
		n = 9 / 5 * n,
		@SetNumberField("//field2", n + 32)),
	// else
	@Do(
		@SetNumberField("//field1", 0),
		@SetNumberField("//field2", 32)));

ตัวอย่างนี้ส่งคืน สตริง จำนวนบวก, จำนวนลบ หรือ ศูนย์ ขึ้นอยู่กับค่าของตัวเลข

var n = @GetNumberField("//field3");
@Return(
	@If(
		n > 0, "Positive number",
		// else if
		n < 0, "Negative number",
		// else
		"Zero"
	)
);

@Implode (JavaScript)

ต่อหลายๆ อิลิเมนต์ของรายการข้อมูลเข้าเป็นสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Implode(textList:any) : string

@Implode(textList:any, sep:string) : string

พารามิเตอร์ คำอธิบาย
textList รายการข้อความที่จะถูกต่อกัน
sep คั่นอิลิเมนต์ในสตริง ค่าดีฟอลต์คือ ช่องว่าง
ค่าส่งคืน คำอธิบาย
string สตริงผลลัพธ์

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้รวมรายการโดยใช้ ช่องว่างเพื่อคั่นอิลิเมนต์
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = new Array("Paris", "Berlin", "London", "Moscow");

var citiesString = @Implode(cities);
p(citiesString); // <<<Paris Berlin London Moscow>>>

ตัวอย่าง นี้รวมรายการโดยใช้เครื่องหมายจุลภาค และช่องว่างเพื่อคั่นอิลิเมนต์

function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = new Array("Paris", "Berlin", "London", "Moscow");

var citiesString = @Implode(cities, ", ");
p(citiesString); // <<<Paris, Berlin, London, Moscow>>>

@Integer (JavaScript)

ตัดปลายตัวเลขเป็นจำนวนเต็ม

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Integer(value:double) : double
พารามิเตอร์ คำอธิบาย
value ตัวเลขหรืออาร์เรย์ของตัวเลข
ค่าส่งคืน คำอธิบาย
double จำนวนที่ตัดปลายหรืออาร์เรย์ของตัวเลข

การใช้งาน

พารามิเตอร์สเกลาร์จะให้ผลลัพธ์ สเกลาร์ พารามิเตอร์อาร์เรย์จะให้ผลลัพธ์เป็นอาร์เรย์โดยอิลิเมนต์ ผลลัพธ์สอดคล้องกับอิลิเมนต์ของพารามิเตอร์

ฟังก์ชันนี้ลบ ส่วนที่เป็นเศษส่วนของตัวเลข ถ้ามี และส่งคืนส่วนเต็มจำนวน ไม่มีการปัดเศษ

ตัวอย่าง

ตัวอย่างนี้รับค่าจำนวนสุ่ม 16 จำนวน และเปลี่ยนค่าให้เป็นเลขจำนวนเต็มโดยการย้ายจุดทศนิยมสองตำแหน่ง ไปทางขวา และตัดปลายผลลัพธ์
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

for(var i = 0; i < 16; i++) {
	var r = @Integer(@Random() * 100);
	p(i + " " + r);
}

@IsAvailable (JavaScript)

ระบุว่าไอเท็มมีอยู่ในเอกสารปัจจุบันหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsAvailable(name:string) : int
พารามิเตอร์ คำอธิบาย
name ชื่อของไอเท็ม
ค่าส่งคืน คำอธิบาย
int 1 ถ้ามีไอเท็มอยู่ มิฉะนั้นเป็น 0

ตัวอย่าง

ตัวอย่างนี้เป็นค่าเลเบล ซึ่ง แสดงถ้าข้อมูลสำหรับ element0 แสดงอยู่
if(@IsAvailable("Subject") == @True())
	return "Subject is available"
else
	return "Subject is unavailable"

@IsDocBeingLoaded (JavaScript)

ส่งคืน 1 ถ้าเอกสารปัจจุบันจะถูกโหลด

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsDocBeingLoaded() : int
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเอกสารจะถูกโหลด

@IsDocBeingSaved (JavaScript)

ส่งคืน 1 ถ้าเอกสารปัจจุบันจะถูกบันทึก

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsDocBeingSaved() : int
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเอกสารจะถูกบันทึก

@IsError (JavaScript)

ระบุว่าค่าเป็นเงื่อนไขข้อผิดพลาดหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsError(value:any) : int
พารามิเตอร์ คำอธิบาย
value ชื่อของค่าที่จะตรวจสอบ
ค่าส่งคืน คำอธิบาย
int 1 ถ้าค่าเป็นเงื่อนไขข้อผิดพลาด มิฉะนั้น เป็น 0 ดูที่ @Error (JavaScript) สำหรับ การสร้างเงื่อนไขข้อผิดพลาด

การใช้งาน

ฟังก์ชันนี้ยังส่งคืน 1 ถ้าค่า ไม่ถูกกำหนด หรือ NaN

ตัวอย่าง

ตัวอย่างนี้มีฟังก์ชันที่ ส่งคืน @Error() ในกรณีที่แน่นอน ฟังก์ชัน ระดับบนสสุดทดสอบหา @Error()
function getfield(fieldname) {
	var n = @GetField(fieldname);
	@Return(@If(n < 0, @Error(), n > 255, @Error(), n));
}

@If(@IsError(getfield("//field3")),
	"Out of range",
	// else
	getfield("//field3"));

@IsMember (JavaScript)

ระบุว่ารายการมีสตริงเดียวหรือหลายสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsMember(value:any, list:any) : int

@IsMember(value:string, list:any) : int

พารามิเตอร์ คำอธิบาย
value สตริงหรือรายการสตริง ค่าเดียวหรือหลายค่า ต้องตรงกับอิลิเมนต์รายการอย่างแม่นยำรวมถึงขนาดตัวพิมพ์
list รายการที่จะสอบเทียบกัน
ค่าส่งคืน คำอธิบาย
int 1 ถ้า list มี value มิฉะนั้นเป็น 0

ตัวอย่าง

ตัวอย่างนี้ทดสอบรายการเพื่อดูว่า มีสตริง หรือรายการอื่นๆ หรือไม่ การทดสอบแรกและที่สาม เป็นจริง การทดสอบที่สองและสี่เป็นเท็จ
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", "London", "Moscow");
var cities1 = new Array("Berlin", "Moscow");
var cities2 = new Array("Berlin", "Vienna");

if(@IsMember("London", cities) == @True()) {
	p("London is member");
} else {
	p("London is not member");
}

if(@IsMember("Vienna", cities) == @True()) {
	p("Vienna is member");
} else {
	p("Vienna is not member");
}

if(@IsMember(cities1, cities) == @True()) {
	p(@Implode(cities1, "-") + " is member");
} else {
	p(@Implode(cities1, "-") + " is not member");
}

if(@IsMember(cities2, cities) == @True()) {
	p(@Implode(cities2, "-") + " is member");
} else {
	p(@Implode(cities2, "-") + " is not member");
}

@IsNewDoc (JavaScript)

ระบุว่าเอกสารปัจจุบันเป็นเอสการใหม่หรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsNewDoc() : int
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเป็นเอกสารใหม่ มิฉะนั้น 0

การใช้งาน

เอกสารใหม่เป็นเอกสารที่ยังไม่ถูก บันทึก

ตัวอย่าง

ตัวอย่างนี้คือสูตรสำหรับ ฟิลด์เลเบล เลเบลเป็น New document หรือ ค่าของอิลิเมนต์ field1
// Formula for computing label_1
var title = "";
if(@IsNewDoc() == 1) title = "New document";
else title = @GetTextField("//field1");
title;

@IsNotMember (JavaScript)

ระบุว่ารายการไม่มีสตริงเดียวหรือหลายสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsNotMember(value:any, list:any) : int

@IsNotMember(value:string, list:any) : int

พารามิเตอร์ คำอธิบาย
value สตริงหรือรายการสตริง ค่าเดียวหรือหลายค่า ต้องตรงกับอิลิเมนต์รายการอย่างแม่นยำ รวมถึงขนาดตัวพิมพ์ สำหรับค่าที่จะ อยู่ในรายการ
list รายการที่จะสอบเทียบกัน
ค่าส่งคืน คำอธิบาย
int 1 ถ้า list ไม่มี value มิฉะนั้น 0 โดย value คือรายการ อิลิเมนต์ทั้งหมด ของ value ต้องไม่มีอยู่ใน list เพื่อ ผลลัพธ์จะเป็น 1

ตัวอย่าง

ตัวอย่างนี้ทดสอบรายการเพื่อดูว่า ไม่มีสตริง และรายการอื่นๆ อยู่ การทดสอบแรก ที่สาม และ ที่สี่เป็นจริง การทดสอบที่สอง และห้า เป็นเท็จ
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", "London", "Moscow");
var cities1 = new Array("Berlin", "Moscow");
var cities2 = new Array("Berlin", "Vienna");
var cities3 = new Array("Madrid", "Vienna");

if(@IsNotMember("London", cities) == @True()) {
	p("London is not member");
} else {
	p("London is member");
}

if(@IsNotMember("Vienna", cities) == @True()) {
	p("Vienna is not member");
} else {
	p("Vienna is member");
}

if(@IsNotMember(cities1, cities) == @True()) {
	p(@Implode(cities1, "-") + " is not member");
} else {
	p(@Implode(cities1, "-") + " is member");
}

if(@IsNotMember(cities2, cities) == @True()) {
	p(@Implode(cities2, "-") + " is not member");
} else {
	p(@Implode(cities2, "-") + " is member");
}

if(@IsNotMember(cities3, cities) == @True()) {
	p(@Implode(cities3, "-") + " is not member");
} else {
	p(@Implode(cities3, "-") + " is member");
}

@IsNull (JavaScript)

ระบุว่าค่าเป็นสตริงว่าง หรือรายการของสตริง ว่าง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsNull(value:any) : int
พารามิเตอร์ คำอธิบาย
value ค่าที่จะถุตรวจสอบ
ค่าส่งคืน คำอธิบาย
int 1 ถ้าค่าเป็นสตริงว่าง หรือรายการ ของสตริงว่าง มิฉะนั้นเป็น 0

การใช้งาน

ฟังก์ชันนี้ตรวจสอบหาสตริงว่าง อย่าสับสนกับค่า null

ตัวอย่าง

ตัวอย่างนี้มี @Null ใน รายการ และตรวจสอบกับ @IsNull
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", @Null(), "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(!@IsNull(cities[i])) p(cities[i]);
}

ตัวอย่างนี้มีสตริงว่างในรายการและ ตรวจสอบกับ @IsNull

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", "", "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(!@IsNull(cities[i])) p(cities[i]);
}

ตัวอย่างนี้มี @Null ใน รายการและตรวจสอบโดยการเปรียบเทียบกับสตริงว่าง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", @Null(), "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(cities[i] != "") p(cities[i]);
}

ตัวอย่างนี้มี null ในรายการ และตรวจสอบโดยการเปรียบเทียบกับ null

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", null, "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(cities[i] != null) p(cities[i]);
}

@IsNumber (JavaScript)

ระบุว่าค่าเป็นตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsNumber(value:any) : boolean
พารามิเตอร์ คำอธิบาย
value ค่าที่จะตรวจสอบซึ่งสามารถเป็นสเกลาร์ หรือ อาร์เรย์
ค่าส่งคืน คำอธิบาย
boolean 1 ถ้าค่าเป็นตัวเลข มิฉะนั้นเป็น 0

ตัวอย่าง

ตัวอย่างนี้ตรวจสอบค่าต่างๆ เพื่อดูว่าค่าเป็นตัวเลข ข้อความ หรือวันที่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function printType(value) {
	p(value + " is typeof " + typeof(value));
	if(@IsNumber(value)) p(value + " is number");
		else p(value + " is not number");
	if(@IsText(value)) p(value + " is text");
		else p(value + " is not text");
	if(@IsTime(value)) p(value + " is time");
		else p(value + " is not time");
}

printType("some text");
printType(9.8);
printType(new Number(9.9));
printType("4/1/06 12:01");
printType(new Date(2006, 3, 1, 12, 1));

@IsResponseDoc (JavaScript)

ระบุว่าเอกสารปัจจุบันเป็นเอกสารการตอบกลับหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsResponseDoc() : int
ค่าส่งคืน คำอธิบาย
int 1 ถ้าเอกสารเป็นเอกสารการตอบกลับ มิฉะนั้น 0

ตัวอย่าง

ตัวอย่างนี้เป็นสูตรสำหรับ คอลัมน์มุมมอง คอลัมน์แสดง ID ของเอกสารแถวถ้าเป็น เอกสารการตอบกลับ
var docid = "";
if(@IsResponseDoc() == @True())
	docid = @DocID();

@IsText (JavaScript)

ระบุว่าค่าเป็นสตริงหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsText(value:any) : int
พารามิเตอร์ คำอธิบาย
value ค่าที่จะตรวจสอบซึ่งสามารถเป็นสเกลาร์ หรือ อาร์เรย์
ค่าส่งคืน คำอธิบาย
boolean 1 ถ้าค่าเป็นสตริง มิฉะนั้นเป็น 0

ตัวอย่าง

ตัวอย่างนี้ตรวจสอบค่าต่างๆ เพื่อดูว่าค่าเป็นตัวเลข ข้อความ หรือวันที่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function printType(value) {
	p(value + " is typeof " + typeof(value));
	if(@IsNumber(value)) p(value + " is number");
		else p(value + " is not number");
	if(@IsText(value)) p(value + " is text");
		else p(value + " is not text");
	if(@IsTime(value)) p(value + " is time");
		else p(value + " is not time");
}

printType("some text");
printType(9.8);
printType(new Number(9.9));
printType("4/1/06 12:01");
printType(new Date(2006, 3, 1, 12, 1));

@IsTime (JavaScript)

ระบุว่าค่าเป็นวันที่และเวลาหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsTime(value:any) : int
พารามิเตอร์ คำอธิบาย
value ค่าที่จะตรวจสอบซึ่งสามารถเป็นสเกลาร์ หรือ อาร์เรย์
ค่าส่งคืน คำอธิบาย
boolean 1 ถ้าค่าเป็นวันที่และเวลา มิฉะนั้น 0

ตัวอย่าง

ตัวอย่างนี้ตรวจสอบค่าต่างๆ เพื่อดูว่าค่าเป็นตัวเลข ข้อความ หรือวันที่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function printType(value) {
	p(value + " is typeof " + typeof(value));
	if(@IsNumber(value)) p(value + " is number");
		else p(value + " is not number");
	if(@IsText(value)) p(value + " is text");
		else p(value + " is not text");
	if(@IsTime(value)) p(value + " is time");
		else p(value + " is not time");
}

printType("some text");
printType(9.8);
printType(new Number(9.9));
printType("4/1/06 12:01");
printType(new Date(2006, 3, 1, 12, 1));

@IsUnavailable (JavaScript)

ระบุว่าไอเท็มมีอยู่ในเอกสารปัจจุบันหรือไม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@IsUnavailable(name:string) : int
พารามิเตอร์ คำอธิบาย
name ชื่อของไอเท็ม
ค่าส่งคืน คำอธิบาย
int 1 ถ้าไม่มีไอเท็มอยู่ มิฉะนั้นเป็น 0

ตัวอย่าง

ตัวอย่างนี้เป็นค่าเลเบล ซึ่ง แสดงถ้าข้อมูลสำหรับ element0 แสดงอยู่
if(@IsUnvailable("Subject") == @True())
	return "Subject is unavailable"
else
	return "Subject is available"

@Left (JavaScript)

ส่งคืนอักขระซ้ายสุดของสตริงเป็นจำนวน อักขระที่ระบุ หรือสูงสุดแต่ไม่รวมสตริงย่อย

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Left(value:string, n:int) : string

@Left(value:string, subString:string) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะตรวจสอบ
n จำนวนอักขระ ฟังก์ชันส่งคืนอ จำนวนอักขระซ้ายสุดที่ระบุ จำนวนจริงถูกตัดปลาย เป็นจำนวนเต็ม
subString สตริงย่อย ฟังก์ชันส่งคืนอักขระ ซ้ายสุดสูงสุด และไม่รวมสตริงย่อย
ค่าส่งคืน คำอธิบาย
string อักขระซ้ายสุด

การใช้งาน

ฟังก์ชันนี้ส่งคืน:
  • ทั้งสตริงถ้า n เกินความยาว ของสตริง
  • ทั้งสตริงถ้า n เป็นค่าลบ
  • สตริงว่างถ้า n เป็น 0
  • สตริงว่างถ้าไม่พบ subString

ตัวอย่าง

(1) ตัวอย่างนี้รับ 5 อักขระ ซ้ายสุด 6 อักขระขวาสุด และอักขระที่น้อยกว่า 6 ตัวแรก และ 7 ตัวสุดท้าย
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, 5);
var price = @Right(lineitem, 6);
var description = @LeftBack(@RightBack(lineitem, 6), 7);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) ตัวอย่างนี้รับค่าอักขระซ้ายสุดจนถึงช่องว่างแรก อักขระขวาสุดย้อนกลับไปถึงช่องว่างสุดท้าย และอักขระระหว่าง ช่องว่างแรกและสุดท้าย

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, " ");
var price = @RightBack(lineitem, " ");
var description = @LeftBack(@Right(lineitem, " "), " ");
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

@LeftBack (JavaScript)

ส่งคืนอักขระซ้ายสุดของสตริงลบกับจำนวน อักขระที่ระบุ หรือจนถึงแต่ไม่รวมสตริงย่อยสุดท้าย ที่พบ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@LeftBack(value:string, n:int) : string

@LeftBack(value:string, subString:string) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะตรวจสอบ
n จำนวนอักขระ ฟังก์ชันส่งคืน อักขระซ้ายสุดลบจำนวนอักขระที่ระบุ จำนวน จริงถูกตัดปลายเป็นเศษส่วน
subString สตริงย่อย ฟังก์ชันส่งคืนอักขระ ซ้ายสุดจำนวนและไม่รวมการเกิดสุดท้ายของสตริงย่อย
ค่าส่งคืน คำอธิบาย
string อักขระซ้ายสุด

การใช้งาน

ฟังก์ชันนี้ส่งคืน:
  • สตริงว่างถ้า n เกินความยาว ของสตริง
  • ทั้งสตริงถ้า n เป็นค่าลบ
  • ทั้งสตริงถ้า n เป็น 0
  • สตริงว่างถ้าไม่พบ subString

ตัวอย่าง

(1) ตัวอย่างนี้รับ 5 อักขระ ซ้ายสุด 6 อักขระขวาสุด และอักขระที่น้อยกว่า 6 ตัวแรก และ 7 ตัวสุดท้าย
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, 5);
var price = @Right(lineitem, 6);
var description = @LeftBack(@RightBack(lineitem, 6), 7);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) ตัวอย่างนี้รับค่าอักขระซ้ายสุดจนถึงช่องว่างแรก อักขระขวาสุดย้อนกลับไปถึงช่องว่างสุดท้าย และอักขระระหว่าง ช่องว่างแรกและสุดท้าย

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, " ");
var price = @RightBack(lineitem, " ");
var description = @LeftBack(@Right(lineitem, " "), " ");
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

@Length (JavaScript)

ส่งคืนจำนวนอักขระในสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Length(value:string) : int
พารามิเตอร์ คำอธิบาย
value สตริงหรืออาร์เรย์ของสตริงที่จะตรวจสอบ
ค่าส่งคืน คำอธิบาย
int ความยาวของสตริงหรือแต่ละอิลิเมนต์ของ อาร์เรย์สตริง

การใช้งาน

ถ้าพารามิเตอร์เป็นสตริง ผลลัพธ์ คือความยาวของสตริงนั้น ถ้าพารามิเตอร์เป็นอาร์เรย์ของสตริง ผลลัพธ์จะเป็นอาร์เรย์ที่มีความยาวของแต่ละสตริง

ตัวอย่าง

ตัวอย่างนี้วิเคราะห์คำการแยกสตริง และการตัดอิลิเมนต์ที่คั่นด้วยเครื่องหมายจุลภาค อิลิเมนต์จากอาร์เรย์หนึ่ง และอาร์เรย์ที่สองเก็บค่าความยาว
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var mystring = "  cats , trees,  houses, bikes ";

if(@Length(@Trim(mystring)) == 0) { // Make sure string is not empty
	p("No data");
	return;
}
var mylist = new Array();
while(@Contains(mystring, ",") == @True()) {
	mylist.push(@Trim(@Left(mystring, ",")));
	mystring = @Trim(@Right(mystring, ","));
}
mylist.push(@Trim(mystring));
var mylistlen = @Length(mylist); // Create array with token lengths

for(var i = 0; i < mylist.length; i++) {
	p(mylist[i] + " " + mylistlen[i]);
}

@List (JavaScript)

สร้างรายการ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@List(values:...) : any
พารามิเตอร์ คำอธิบาย
ค่า อย่างน้อยหนึ่งพารามิเตอร์ของชนิดใดๆ แต่ละพารามิเตอร์ กลายเป็นอิลิเมนต์ในรายการ
ค่าส่งคืน คำอธิบาย
any รายการ

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้สร้างรายการที่มี 4 อิลิเมนต์
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = @List("Paris", "Berlin", "London", "Moscow");
for(var i = 1; i <= @Count(cities); i++) {
	p(i + " " + @Element(cities, i));
}
/*
<<<1 Paris>>>
<<<2 Berlin>>>
<<<3 London>>>
<<<4 Moscow>>>
*/

@LowerCase (JavaScript)

แปลงสตริงเป็นตัวพิมพ์เล็ก

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@LowerCase(value:string) : string
พารามิเตอร์ คำอธิบาย
value สตริงหรืออาร์เรย์ของสตริง
ค่าส่งคืน คำอธิบาย
string สตริงหรืออาร์เรย์ของสตริงที่แปลง

การใช้งาน

ฟังก์ชันนี้มีผลต่ออักขระแบบตัวอักษร ในสตริงเปลี่ยนอักขระตัวพิมพ์ใหญ่ เป็นตัวพิมพ์เล็กที่ตรงกัน

ถ้า พารามิเตอร์เป็นอาร์เรย์ ผลลัพธ์จะเป็นอาร์เรย์ที่มีอิลิเมนต์ทั้งหมด ถูกแปลง

ตัวอย่าง

ประโยชน์ของการใช้ฟังก์ชันนี้ คือเพื่อทำการเปรียบเทียบไม่ว่าจะมีขนาดตัวพิมพ์ใด ดังแสดงใน ตัวอย่างนี้
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "foo", "Berlin", "Foo", "Moscow");
//var cities = new Array("Paris", "Berlin", "London", "Moscow");

if(@Contains(@LowerCase(cities), "foo") == @True()) {
	for(var i = 0, j = 0; i < cities.length; i++) {
		if(@LowerCase(cities[i]) != "foo") {
			cities[j] = cities[i];
			j++;
		}
	}
	for(; i > j; i--) {
		cities.pop();
	}
}
p(cities);

@Max (JavaScript)

ส่งคืนตัวเลขที่มีค่ามากที่สุดในกลุ่มของตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Max(values:...) : double
พารามิเตอร์ คำอธิบาย
ค่า ตัวเลขหรืออาร์เรย์ของตัวเลข
ค่าส่งคืน คำอธิบาย
double ตัวเลขที่มีค่ามากที่สุด

การใช้งาน

พารามิเตอร์สเกลาร์และพารามิเตอร์อาร์เรย์ ทั้งหมดถูกค้นหาค่าสูงสุด

ตัวอย่าง

ตัวอย่างนี้สร้างตัวเลขสุ่ม 16 ตัว และรับค่าตัวเลขต่ำสุด และสูงสุด
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var a = new Array();
for(var i = 0; i < 16; i++) {
	a.push(@Random());
}
min = @Min(a);
max = @Max(a);
p("Random numbers " + min + " through " + max);

@Member (JavaScript)

ส่งคืนตำแหน่งของการเกิดค่าในรายการ สตริงครั้งแรก

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Member(value:string, list:any) : int
พารามิเตอร์ คำอธิบาย
value ค่าสตริง ค่านี้ต้องตรงกับอิลิเมนต์ ในรายการอย่างแม่นย้ำรวมถึงขนาดตัวพิมพ์จึงจะสำเร็จ
list รายการที่จะสอบเทียบกัน
ค่าส่งคืน คำอธิบาย
int ตำแหน่งของค่าในรายการเริ่มต้น ที่ 1 หรือ 0 ถ้าไม่มีรายการตรงกัน

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้สร้างเซ็ตย่อยรายการจนถึง และรวมสมาชิกที่ระบุ
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = @List("Paris", "Berlin", "Moscow", "London");
var city = "Berlin";
var n = @Member(city, cities);
if(n > 0) {
	var citiesSubset = @Subset(cities, n);
	for(var i = 1; i <= @Count(citiesSubset); i++) {
		p(@Element(citiesSubset, i));
	}
} else {
	p(city + " is not listed");
}
/*
<<<Paris>>>
<<<Berlin>>>
*/

@Middle (JavaScript)

ส่งคืนอักขระของสตริง เริ่มต้นที่อ็อฟเซ็ตตั้งแต่ เริ่มต้น หรือหลังสตริงย่อย เป็นจำนวนอักขระตามที่ระบุ หรือไปจนถึง และไม่รวมสตริงย่อย

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Middle(value:string, offset:int, endString:string) : string

@Middle(value:string, offset:int, len:int) : string

@Middle(value:string, startString:string, endString:string) : string

@Middle(value:string, startString:string, len:int) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะตรวจสอบ
offset อ็อฟเซ็ตจากอักขระแรก ฟังก์ชัน ส่งคืนอักขระเริ่มต้นที่ตำแหน่งนี้ อ็อฟเซ็ต 0 หมายถึงอักขระ แรก จำนวนจริงถูกตัดปลายเป็นจำนวนเต็ม
startString สตริงย่อย ฟังก์ชันส่งคืนอักขระ เริ่มตั้งแต่ตำแหน่งหลังการเกิดตัวแรกของสตริงย่อย สตริงว่างหมายถึงตำแหน่งก่อนอักขระตัวแรก
len จำนวนอักขระ ฟังก์ชันส่งคืน จำนวนอักขระที่ระบุ จำนวนจริงถูกตัดปลายเป็นจำนวนเต็ม
endString สตริงย่อย ฟังก์ชันส่งคืนอักขระ ไปจนถึง และไม่รวมการเกิดตัวแรกของสตริงย่อย สตริง ว่างหมายถึงตำแหน่งต่อจากอักขระตัวสุดท้าย
ค่าส่งคืน คำอธิบาย
string อักขระที่อธิบาย

การใช้งาน

ฟังก์ชันนี้ส่งคืน:
  • สตริงว่างถ้า offset อยู่นอกช่วง ของสตริง
  • จนถึงท้ายสตริงถ้า len เกินอักขระ ที่เหลือในสตริง
  • สตริงว่างถ้า len เป็น 0 หรือจำนวนลบ
  • สตริงว่างถ้าไม่พบ startString
  • สตริงว่างถ้าไม่พบ endString

ตัวอย่าง

(1) ตัวอย่างนี้รับอักขระตั้งแต่ อักขระตัวแรกจนถึงเว้นวรรคตัวแรก อักขระตัวสุดท้ายย้อนกลับ ไปที่เว้นวรรคตัวสุดท้าย และ 7 ถึงอักขระที่อยู่ก่อนหน้า เว้นวรรคตัวสุดท้าย
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, 0, " ");
var price = @MiddleBack(lineitem, 0, " ");
var description = @Middle(lineitem, 6, " " + price);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) ตัวอย่างนี้รับอักขระตั้งแต่อักขระตัวแรกไป 5 อักขระ อักขระตัวสุดท้ายย้อนกลับไป 6 อักขระ และอักขระตัวที่ 7 ตาม ความยาวสตริงลบ 13

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, 0, 5);
var price = @MiddleBack(lineitem, 0, -6);
var description = @Middle(lineitem, 6, len - 13);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(3) ต

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, "", " ");
var price = @MiddleBack(lineitem, "", " ");
var description = @Middle(lineitem, " ", " " + price);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(4) ตัวอย่างนี้รับอักขระจากอักขระตัวแรกไป 5 อักขระ อักขระตัวสุดท้ายย้อนกลับไป 6 อักขระ และอักขระต่อจาก เว้นวรรคตัวแรกตามความยาวของสตริงลบ 13

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, "", 5);
var price = @MiddleBack(lineitem, "", -6);
var description = @Middle(lineitem, " ", len - 13);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

@MiddleBack (JavaScript)

ส่งคืนอักขระของสตริง เริ่มตั้งแต่อ็อฟเซ็ตจาก ท้าย หรือก่อนรายการที่เกิดล่าสุดของสตริงย่อย กลับไปและ ไม่รวมการเกิดครั้งหลังสุดของสตริงย่อย หรือสำหรับจำนวนลบของ อักขระที่ระบุ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@MiddleBack(value:string, offset:int, endString:string) : string

@MiddleBack(value:string, offset:int, len:int) : string

@MiddleBack(value:string, startString:string, endString:string) : string

@MiddleBack(value:string, startString:string, len:int) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะตรวจสอบ
offset อ็อฟเซ็ตจากอักขระตัวสุดท้าย ฟังก์ชัน ส่งคืนอักขระเริ่มต้นที่ตำแหน่งนี้ อ็อฟเซ็ต 0 หมายถึงอักขระ ตัวสุดท้าย จำนวนจริงถูกตัดปลายเป็นจำนวนเต็ม
startString สตริงย่อย ฟังก์ชันส่งคืนอักขระ เริ่มตั้งแต่ตำแหน่งก่อนการเกิดตัวสุดท้ายของสตริงย่อย สตริงว่างหมายถึงตำแหน่งหลังจากอักขระตัวสุดท้าย
len จำนวนลบของอักขระ ฟังก์ชัน ส่งคืนจำนวนอักขระที่ระบุ จำนวนจริงถูกตัดปลาย เป็นจำนวนเต็ม จำนวนต้องเป็นลบ
endString สตริงย่อย ฟังก์ชันส่งคืนอักขระ ย้อนกลับ และไม่รวมการเกิดตัวสุดท้ายของสตริงย่อย สตริง ว่างหมายถึงตำแหน่งหลังจากอักขระตัวสุดท้าย
ค่าส่งคืน คำอธิบาย
string อักขระที่อธิบาย

การใช้งาน

ฟังก์ชันนี้ส่งคืน:
  • สตริงว่างถ้า offset อยู่นอกช่วง ของสตริง
  • จนถึงท้ายสตริงถ้า len เกินอักขระ ที่เหลือในสตริง
  • สตริงว่างถ้า len เป็น 0 จำนวนบวก
  • สตริงว่างถ้าไม่พบ startString
  • สตริงว่างถ้าไม่พบ endString

ตัวอย่าง

(1) ตัวอย่างนี้รับอักขระตั้งแต่ อักขระตัวแรกจนถึงเว้นวรรคตัวแรก อักขระตัวสุดท้ายย้อนกลับ ไปที่เว้นวรรคตัวสุดท้าย และ 7 ถึงอักขระที่อยู่ก่อนหน้า เว้นวรรคตัวสุดท้าย
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, 0, " ");
var price = @MiddleBack(lineitem, 0, " ");
var description = @Middle(lineitem, 6, " " + price);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) ตัวอย่างนี้รับอักขระตั้งแต่อักขระตัวแรกไป 5 อักขระ อักขระตัวสุดท้ายย้อนกลับไป 6 อักขระ และอักขระตัวที่ 7 ตาม ความยาวสตริงลบ 13

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, 0, 5);
var price = @MiddleBack(lineitem, 0, -6);
var description = @Middle(lineitem, 6, len - 13);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(3) ต

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, "", " ");
var price = @MiddleBack(lineitem, "", " ");
var description = @Middle(lineitem, " ", " " + price);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(4) ตัวอย่างนี้รับอักขระจากอักขระตัวแรกไป 5 อักขระ อักขระตัวสุดท้ายย้อนกลับไป 6 อักขระ และอักขระต่อจาก เว้นวรรคตัวแรกตามความยาวของสตริงลบ 13

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, "", 5);
var price = @MiddleBack(lineitem, "", -6);
var description = @Middle(lineitem, " ", len - 13);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

@Min (JavaScript)

ส่งคืนตัวเลขที่มีค่าน้อยที่สุดในกลุ่มของตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Min(values:...) : double
พารามิเตอร์ คำอธิบาย
ค่า ตัวเลขหรืออาร์เรย์ของตัวเลข
ค่าส่งคืน คำอธิบาย
double ตัวเลขที่มีค่าน้อยที่สุด

การใช้งาน

พารามิเตอร์สเกลาร์และพารามิเตอร์อาร์เรย์ ทั้งหมดถูกค้นหาค่าต่ำสุด

ตัวอย่าง

ตัวอย่างนี้สร้างตัวเลขสุ่ม 16 ตัว และรับค่าตัวเลขต่ำสุด และสูงสุด
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var a = new Array();
for(var i = 0; i < 16; i++) {
	a.push(@Random());
}
min = @Min(a);
max = @Max(a);
p("Random numbers " + min + " through " + max);

@Minute (JavaScript)

ส่งคืนนาทีจากวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Minute(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int นาทีของวันที่และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@Modified (JavaScript)

ส่งคืนค่า time-date ที่ระบุเวลาที่เอกสาร ถูกแก้ไขเริ่มแรก

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Modified() : Date
ค่าส่งคืน คำอธิบาย
Date วันที่และเวลาแก้ไขล่าสุด

ตัวอย่าง

ตัวอย่างนี้ปรับวันที่แก้ไข เอกสารปัจจุบันเพื่อทำเครื่องหมาย OBSOLETE หลัง 30 วัน
var s = "ACTIVE";
var xdate = @Adjust(@Modified(), null, null, 30, null, null, null, "[InLocalTime]");
if(@Now() > xdate) s = "OBSOLETE";
return s;

@Modulo (JavaScript)

ส่งคืนเศษเหลือของการดำเนินการหาร

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Modulo(value:double, divider:double) : double
พารามิเตอร์ คำอธิบาย
value ค่าที่จะหาร
divider ค่าที่จะใช้หาร ไม่สามารถเป็น 0 (ผลลัพธ์ จะเป็น NaN)
ค่าส่งคืน คำอธิบาย
double เศษเหลือ

การใช้งาน

ค่าพารามิเตอร์และค่าส่งคืนสามารถ เป็นอาร์เรย์ การดำเนินการดำเนินการกับอิลิเมนต์ที่สอดคล้องกัน

ตัวอย่าง

(1) ตัวอย่างนี้ใช้ @Modulo เพื่อพิจารณว่า ว่าจำนวนเป็นคู่หรือคี่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

for(i = 0; i < 10; i++) {
	if(@Modulo(i, 2) == 0)
		p(i + " is even");
	else
		p(i + " is odd");
}

(2) ตัวอย่างนี้ใช้ @Modulo เพื่อส่งคืนผลหาร จำนวนเต็มและเศษเหลือของการดำเนินการหาร

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function intdiv(n, d) {
	var a = new Array();
	n = @Round(n);
	d = @Round(d);
	var m = @Modulo(n, d);
	a.push((n - m) / d);
	a.push(m);
	return(a);
}

var x = intdiv(25, 4);
p("25 / 4 = " + x[0] + " remainder " + x[1]);

@Month (JavaScript)

ส่งคืนค่าเดือนจากวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Month(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int เดือนของวันที่และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@Name (JavaScript)

ส่งคืนคอมโพเนนต์ หรือปรับรูปแบบชื่อแบบลำดับขั้น

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Name(action:string, name:string) : string
พารามิเตอร์ คำอธิบาย
action แอ็คชันการจัดการ ดูตารางด้านล่าง
name ชื่อแบบลำดับขั้น
ค่าส่งคืน คำอธิบาย
string คอมโพเนนต์หรือชื่อที่ปรับรูปแบบ

การใช้งาน

แอ็คชันการจัดการเป็นดังนี้:
แอ็คชัน คำอธิบาย
[A] ส่งคืนคอมโพเนนต์ ADMD (administration management domain name) ของชื่อแบบลำดับขั้น
[ABBREVIATE] คำย่อชื่อแบบลำดับขั้น ซึ่งลบ เลเบลคอมโพเนนต์ ค่านี้ประหยัดพื้นที่การแสดงผล และดูง่ายขึ้น
[ADDRESS821] ส่งคืนอินเตอร์เน็ตแอดเดรสในรูปแบบตาม RFC 821 Address Format Syntax ไม่ว่าแอดเดรสเดิมนั้น จะอยู่ในรูปแบบ RFC 821 หรือ RFC 822 ขนาดตัวพิมพ์ต้องเหมือนกัน
[C] ส่งคืนคอมโพเนนต์ประเภท/ภูมิภาคของชื่อแบบ ลำดับขั้น
[CANONICALIZE] ขยายชื่อที่ย่อ โดยเพิ่มคอมโพเนนต์ใด ที่หายไป รวมถึงเลเบล คอมโพเนนต์ที่หายไป ถูกนำมาจาก ID ผู้ใช้ปัจจุบัน ไม่ใช่จาก Domino Directory
[CN] ส่งคืน:
  • คอมโพเนนต์ชื่อทั่วไปของชื่อ Domino
  • ส่วนโลคัลของอินเตอร์เน็ตแอดเดรสในรูปแบบตาม RFC 821 Address Format Syntax
  • ส่วนวลีของอินเตอร์เน็ตแอดเดรสในรูปแบบตาม RFC 822 Address Format Syntax
[G] ส่งคืนคอมโพเนนต์ชื่อที่กำหนด (ชื่อ แรก) ของชื่อแบบลำดับขั้น
[HIERARCHYONLY] ตัดคอมโพเนนต์ CN ของชื่อแบบลำดับขั้น และส่งคืนคอมโพเนนต์ที่เหลือ
[I] ส่งคืนคอมโพเนนต์เริ่มต้นของชื่อ แบบลำดับขั้น
[LP] ส่งคืน LocalPart ของ อินเตอร์เน็ตแอดเดรสมาตรฐานตาม RFC 822 Address Format Syntax
[O] ส่งคืนคอมโพเนนต์องค์กรของชื่อแบบ ลำดับขั้น
[OUn] ส่งคืนคอมโพเนนต์หน่วยองค์กรที่ระบุ ของชื่อแบบลำดับขั้น n สามารถเป็น 1 ถึง 4 เช่น ในin OU1 ในรูปแบบบัญญัติของชื่อ คอมโพเนนต์ OU ไม่ถูกใส่หมายเลข อย่างไรก็ตาม คอมโพเนนต์ถูกนับจากขวา ไปซ้าย ดังนั้นคอมโพเนนต์แรกที่เกิดของเลเบล OU จะถือเป็น OU1 อันดับที่สองถือเป็น OU2 และต่อไปตามลำดับ Domino ไม่ ยอมรับ OU เป็นคีย์เวิร์ด
[P] ส่งคืนคอมโพเนนต์ PRMD (private management domain name) ของชื่อแบบลำดับขั้น
[PHRASE] ส่งคืนส่วน Phrase ของ อินเตอร์เน็ตแอดเดรสมาตรฐานตาม RFC 822 Address Format Syntax
[Q] ส่งคืนคอมโพเนนต์การสร้าง (เช่น "Jr") ของชื่อแบบลำดับขั้น
[S] ส่งคืนคอมโพเนนต์ชื่อสกุล (นามสกุล) ของชื่อแบบลำดับขั้น
[TOAT] ส่งคืนชื่อ LDAP AttributeType เมื่อชื่อฟิลด์ Domino ถูกระบุ
[TODATATYPE] ส่งคืนชื่อชนิดข้อมูล Domino เมื่อชื่อ LDAP Syntax ถูกระบุ
[TOFIELD] ส่งคืนชื่อฟิลด์ Domino เมื่อชื่อ LDAP AttributeType ถูกระบุ
[TOFORM] ส่งคืนชื่อฟอร์ม Domino เมื่อชื่อ LDAP ObjectClass ถูกระบุ
[TOKEYWORD] ย้อนกลับลำดับซึ่งคอมโพเนนต์การตั้งชื่อ แสดง และแทนสแลชด้วยแบคสแลช: Country\Organization\Organization Unit ซึ่งเป็นประโยชน์เมื่อคุณต้องการจัดหมวดหมู่มุมมองตาม คอมโพเนนต์ของชื่อแบบลำดับขั้นของผู้ใช้ (แบคสแลชแทน หมวดหมู่ย่อยในมุมมอง) อ็อพชันนี้ไม่ส่งคืนส่วนชื่อสามัญ ของชื่อผู้ใช้
[TOOC] ส่งคืนชื่อ LDAP ObjectClass เมื่อชื่อฟอร์มหรือฟอร์มย่อย Domino ถูกระบุ
[TOSYNTAX] ส่งคืนชื่อ LDAP Syntax เมื่อชื่อชนิดข้อมูล Domino ถูกระบุ

ตัวอย่าง

ถ้า @UserName() ส่งคืน CN=Roberta Person/OU=NY/O=Acme ค่าต่อไปนี้เป็นจริง
ประโยคนี้ส่งคืน Roberta Person/NY/Acme
@Name("[ABBREVIATE]", @UserName())
ประโยคนี้ส่งคืน Roberta Person
@Name("[CN]", @UserName())

@NewLine (JavaScript)

ส่งคืนอักขระขึ้นบรรทัดใหม่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@NewLine() : string
ค่าส่งคืน คำอธิบาย
string อักขระขึ้นบรรทัดใหม่

การใช้งาน

อักขระขึ้นบรรทัดใหม่คือ Unicode 10 JavaScript escapes เป็น \n

ตัวอย่าง

ตัวอย่างนี้วิเคราะห์คำสตริงบน อักขระขึ้นบรรทัดใหม่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

// Create string with newlines
var line1 = "Line one";
var line2 = "Line two";
var line3 = "Line three";
var lines = line1 + "\n" + line2 + "\n" + line3;

// Parse string into separate lines
var oneline = "";
while(lines.length > 0) {
	if(@Contains(lines, @NewLine())) {
		oneline = @Left(lines, @NewLine());
		lines = @Right(lines, @NewLine());
	} else {
		oneline = lines;
		lines = "";
	}
	p(oneline);
}

@No (JavaScript)

ส่งคืนตัวเลข 0

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@No() : int
ค่าส่งคืน คำอธิบาย
int ตัวเลข 0

การใช้งาน

สำหรับค่า "โลจิคัล" @functions ใช้ ตัวเลข 1 สำหรับค่าจริง และ 0 สำหรับค่าเท็จ หมายเลข 1 สามารถแสดง ด้วย @True (JavaScript) หรือ @Yes (JavaScript)

ตัวอย่าง

. หมายเลข 0 สามารถแสดงด้วย @False (JavaScript) หรือ @No (JavaScript)

ห้ามใช้ JavaScript ค่า true และ false สำหรับค่า "logical" @function

ตัวอย่าง ต่อไปนี้แสดงวิธีทดสอบ @function ที่ส่งคืนค่า "โลจิคัล"
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

if(@IsNewDoc() == @No())
	p("Opening old document");
else
	p("Creating new document");

/* Do not do this
if(!@IsNewDoc())
	p("Opening old document");
else
	p("Creating new document");
*/

@Now (JavaScript)

ส่งคืนวันที่และเวลาของเซิร์ฟเวอร์

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Now() : Date
ค่าส่งคืน คำอธิบาย
Date วันที่และเวลาปัจจุบันในเขตเวลา เซิร์ฟเวอร์

การใช้งาน

ฟังก์ชันนี้ระบุทั้งวันที่ และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@Null (JavaScript)

ส่งคืนสตริงว่าง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Null() : any
ค่าส่งคืน คำอธิบาย
any สตริงว่าง

การใช้งาน

ฟังก์ชันนี้ส่งคืนสตริงว่าง อย่าสับสนกับค่า null

ตัวอย่าง

(1) ตัวอย่างนี้มี @Null ใน รายการ และตรวจสอบกับ @IsNull
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", @Null(), "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(!@IsNull(cities[i])) p(cities[i]);
}

(2) ตัวอย่างนี้รวมสตริงว่างในรายการ และตรวจสอบสตริงกับ @IsNull

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", "", "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(!@IsNull(cities[i])) p(cities[i]);
}

(3) ตัวอย่างนี้มี @Null ใน รายการและตรวจสอบสตริงโดยการเปรียบเทียบกับสตริงว่าง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", @Null(), "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(cities[i] != "") p(cities[i]);
}

(4) ตัวอย่างนี้มี null ใน รายการและตรวจสอบโดยการเปรียบเทียบกับ null

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "Berlin", null, "Moscow", "London");

for(var i = 0; i < cities.length; i++) {
	if(cities[i] != null) p(cities[i]);
}

@ProperCase (JavaScript)

แปลงสตริงให้มีขนาดตัวพิมพ์ที่เหมาะสม

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@ProperCase(value:string) : string
พารามิเตอร์ คำอธิบาย
value สตริงหรืออาร์เรย์ของสตริง
ค่าส่งคืน คำอธิบาย
string สตริงหรืออาร์เรย์ของสตริงที่แปลง

การใช้งาน

ฟังก์ชันนี้มีผลต่ออักขระแบบตัวอักษร ในสตริงเปลี่ยนอักขระแบบตัวอักษรแรกเป็นตัวพิมพ์ใหญ่ และที่เหลือทั้งหมดเป็นตัวพิมพ์เล็ก

ถ้าพารามิเตอร์เป็นอาร์เรย์ ผลลัพธ์ จะเป็นอาร์เรย์ที่มีอิลิเมนต์ทั้งหมดถูกแปลง

ตัวอย่าง

ตัวอย่างนี้แปลงอิลิเมนต์ของ รายการเป็นขนาดตัวพิมพ์ที่เหมาะสม
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("PARIS", "BERLIN", "lonDon", "mosCow");

cities = @ProperCase(cities);
for(var i = 0; i < cities.length; i++) {
	p(i + " " + cities[i]);
}
/*
<<<0 Paris>>>
<<<1 Berlin>>>
<<<2 London>>>
<<<3 Moscow>>>
*/

@Random (JavaScript)

ส่งคืนตัวเลขสุ่มที่มากกว่าหรือเท่ากับ 0.0 และ น้อยกว่า 1.0

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Random() : double
ค่าส่งคืน คำอธิบาย
double ค่าสุ่ม

ตัวอย่าง

ตัวอย่างนี้รับค่าจำนวนสุ่ม 16 จำนวน และเปลี่ยนค่าให้เป็นเลขจำนวนเต็มโดยการย้ายจุดทศนิยมสองตำแหน่ง ไปทางขวา และตัดปลายผลลัพธ์
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

for(var i = 0; i < 16; i++) {
	var r = @Integer(@Random() * 100);
	p(i + " " + r);
}

@Repeat (JavaScript)

ทำซ้ำสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Repeat(value:string, repeat:int) : string

@Repeat(value:string, repeat:int, maxChar:int) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะถูกทำซ้ำ
repeat จำนวนครั้งที่จะทำซ้ำสตริง
maxChar จำนวนอักขระสูงสุดในผลลัพธ์
ค่าส่งคืน คำอธิบาย
string สตริง value ทำซ้ำ repeat ครั้ง แต่ไม่เกิน maxChar

ตัวอย่าง

(1) ตัวอย่างนี้ทำซ้ำเครื่องหมายขีดคั่น 16 ครั้ง
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var h1 = "+" + @Repeat("-", 16) + "+";
p(h1);
/*
<<<+----------------+>>>
*/

(2) ตัวอย่างนี้ทำซ้ำ asterisk-slash-asterisk ถึงค่าสูงสุด 36 อักขระ

function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var h1 = @Repeat("*/*", 80, 36);
p(h1);
/*
<<<*/**/**/**/**/**/**/**/**/**/**/**/*>>>
*/

@Replace (JavaScript)

แทนที่สตริงในรายการ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Replace(sourceList:any, fromList:any, toList:any) : any
พารามิเตอร์ คำอธิบาย
sourceList รายการที่จะถูกค้นหา
fromList รายการที่มีสตริงการค้นหา สตริง การค้นหาต้องตรงกันทุกตัวอักษรกับอิลิเมนต์ในรายการซอร์ส รวมถึง ขนาดตัวพิมพ์ จึงจะถือว่าตรงกัน
toList รายการที่มีสตริงการแทนที่ รายการ นี้ควรมีความยาวเท่ากับรายการค้นหา
ค่าส่งคืน คำอธิบาย
any sourceList ที่มีการเกิดของ สตริงใน fromList ถูกแทนที่ด้วยอิลิเมนต์ที่ สอดคล้องกันใน toList

การใช้งาน

รายการเป็นอาร์เรย์

ใช้ฟังก์ชันนี้ เพื่อแทนที่ทั้งอิลิเมนต์สตริง เมื่อต้องการแทนที่ส่วนของสตริง ใช้ @ReplaceSubstring (JavaScript)

ตัวอย่าง

ตัวอย่างนี้แทนสตริงใน รายการ
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = @List("Moscow", "London", "Moscow", "Moscow");
var from = @List("Paris", "Berlin", "Moscow", "London");
var to = @List("Ps", "Bn", "Mw", "Ln");
cities = @Replace(cities, from, to);
for(var i = 1; i <= @Count(cities); i++) {
	p(i + " " + @Element(cities, i));
}
/*
<<<1 Mw>>>
<<<2 Ln>>>
<<<3 Mw>>>
<<<4 Mw>>>
*/

@ReplaceSubstring (JavaScript)

แทนที่สตริงย่อยในรายการ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@ReplaceSubstring(sourceList:any, fromList:any, fromList:any) : any
พารามิเตอร์ คำอธิบาย
sourceList รายการที่จะถูกค้นหา
fromList รายการที่มีสตริงย่อยการค้นหา สตริงย่อย การค้นหาต้องตรงกันทุกตัวอักษรกับสตริงย่อยในอิลิเมนต์ในรายการ ซอร์ส รวมถึงขนาดตัวพิมพ์ จึงจะถือว่าตรงกัน
toList รายการที่มีสตริงการแทนที่ รายการ นี้ควรมีความยาวเท่ากับรายการค้นหา
ค่าส่งคืน คำอธิบาย
any sourceList ที่มีการเกิดของ สตริงย่อยใน fromList ถูกแทนที่ด้วยอิลิเมนต์ที่ สอดคล้องกันใน toList

การใช้งาน

รายการเป็นอาร์เรย์

ใช้ฟังก์ชันนี้ เพื่อแทนที่ส่วนของสตริง เมื่อต้องการแทนที่ทั้งอิลิเมนต์รายการ คุณสามารถ ใช้ @Replace (JavaScript)

ตัวอย่าง

ตัวอย่างนี้แทนที่สตริงย่อยใน รายการ
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = @List("The town of Moscow",
	"The town of London",
	"The town of Moscow",
	"The town of Moscow");
var from = @List("town");
var to = @List("city");
cities = @ReplaceSubstring(cities, from, to);
for(var i = 1; i <= @Count(cities); i++) {
	p(i + " " + @Element(cities, i));
}
/*
<<<1 The city of Moscow>>>
<<<2 The city of London>>>
<<<3 The city of Moscow>>>
<<<4 The city of Moscow>>>
*/

@ReplicaID (JavaScript)

ส่งคืน ID เรพลิกาของฐานข้อมูลปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@ReplicaID() : string
ค่าส่งคืน คำอธิบาย
string ID เรพลิกาของฐานข้อมูลปัจจุบัน

การใช้งาน

ID เรพลิกาคือชุดตัวอักษรและตัวเลข 16 ตัว ที่ระบุฐานข้อมูล Notes ฐานข้อมูลใดๆ ที่มี ID เรพลิกาเดียวกันถือเป็นเรพลิกาของอีกฐานข้อมูล

ตัวอย่าง

ฟิลด์ที่คำนวณนี้แสดง ID เรพลิกาของฐานข้อมูลปัจจุบัน
@ReplicaID()

@Return (JavaScript)

ส่งคืนการเรียกใช้งานไปยังฟังก์ชันการเรียกใช้ หรือส่วนติดต่อผู้ใช้

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Return(value:any) : void
พารามิเตอร์ คำอธิบาย
value ค่าส่งคืน ถ้าพารามิเตอร์เป็น null หรือ ถูกข้าม ค่าส่งคืนจะเป็นสตริงว่าง

การใช้งาน

@Return ส่งคืนไปยัง ฟังก์ชันที่เรียกใช้เมื่อใช้ในฟังก์ชันที่ถูกเรียกใช้

@Return ส่งคืน ไปยังส่วนติดต่อผู้ใช้เมื่อใช้ในฟังก์ชันระดับบนสุด

โดยทั่วไป @Return นั้น เกินความจำเป็น ฟังก์ชันส่งคืนค่าหลังจากข้อความสั่งสุดท้ายโดยอัตโนมัติ ถ้าข้อความสั่งสุดท้ายของฟังก์ชันเป็นค่า ค่านั้นจะถูกส่งคืน อย่างไรก็ตาม การใช้ @Return หรือข้อความสั่ง return จะทำให้การเขียนโปรแกรมอยู่ในรูปแบบที่เป็นระเบียบ

ตัวอย่าง

(1) ตัวอย่างนี้เป็นสูตรสำหรับ ฟิลด์ที่คำนวณ โดยส่งคืนค่าตามเงื่อนไข
var n = @GetNumberField("//field3");
@If(
	n > 0, @Return("Positive number"),
	// else if
	n < 0, @Return("Negative number"),
	// else
	@Return("Zero")
);

(2) ตัวอย่างนี้เหมือนกับตัวอย่างแรก ในกรณี ส่วนใหญ่ ข้อความสั่ง @Return จะไม่จำเป็น

var n = @GetNumberField("//field3");
@If(
	n > 0, "Positive number",
	// else if
	n < 0, "Negative number",
	// else
	"Zero"
);

(3) ตัวอย่างนี้ส่งคืนสตริงว่างสำหรับ เงื่อนไขสุดท้าย

var n = @GetNumberField("//field3");
@If(
	n > 0, @Return("Positive number"),
	// else if
	n < 0, @Return("Negative number"),
	// else
	@Return()
);

(4) ตัวอย่างนี้แสดงการส่งคืนจากฟังก์ชัน

function testNumber() {
var n = @GetNumberField("//field3");
@If(
	n > 0, @Return("Positive number"),
	// else if
	n < 0, @Return("Negative number"),
	// else
	@Return("Zero")
);
}

@Return("testNumber = " + testNumber());

@Right (JavaScript)

ส่งคืนอักขระขวาสุดของสตริงเป็นจำนวน อักขระที่ระบุ หรือเริ่มต้นหลังจากสตริงย่อย

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Right(value:string, n:int) : string

@Right(value:string, subString:string) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะตรวจสอบ
n จำนวนอักขระ ฟังก์ชันส่งคืน จำนวนอักขระขวาสุดที่ระบุ จำนวนจริงถูกตัดปลาย เป็นจำนวนเต็ม
substring สตริงย่อย ฟังก์ชันส่งคืนอักขระ ขวาสุดหลังสตริงย่อย
ค่าส่งคืน คำอธิบาย
string อักขระขวาสุด

การใช้งาน

ฟังก์ชันนี้ส่งคืน:
  • ทั้งสตริงถ้า n เกินความยาว ของสตริง
  • ทั้งสตริงถ้า n เป็นค่าลบ
  • สตริงว่างถ้า n เป็น 0
  • สตริงว่างถ้าไม่พบ subString

ตัวอย่าง

(1) ตัวอย่างนี้รับ 5 อักขระ ซ้ายสุด 6 อักขระขวาสุด และอักขระที่น้อยกว่า 6 ตัวแรก และ 7 ตัวสุดท้าย
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, 5);
var price = @Right(lineitem, 6);
var description = @LeftBack(@RightBack(lineitem, 6), 7);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) ตัวอย่างนี้รับค่าอักขระซ้ายสุดจนถึงช่องว่างแรก อักขระขวาสุดย้อนกลับไปถึงช่องว่างสุดท้าย และอักขระระหว่าง ช่องว่างแรกและสุดท้าย

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, " ");
var price = @RightBack(lineitem, " ");
var description = @LeftBack(@Right(lineitem, " "), " ");
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

@RightBack (JavaScript)

ส่งคืนอักขระขวาสุดของสตริงลบกับจำนวน อักขระที่ระบุ หรือย้อนกลับและไม่รวมสตริงย่อยสุดท้าย ที่พบ

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@RightBack(value:string, n:int) : string

@RightBack(value:string, rightBack:string) : string

พารามิเตอร์ คำอธิบาย
value สตริงที่จะตรวจสอบ
n จำนวนอักขระ ฟังก์ชันส่งคืน อักขระขวาสุดลบจำนวนอักขระที่ระบุ จำนวน จริงถูกตัดปลายเป็นเศษส่วน
rightBack สตริงย่อย ฟังก์ชันส่งคืนอักขระ ขวาสุดย้อนกลับ และไม่รวมการเกิดตัวสุดท้ายของสตริงย่อย
ค่าส่งคืน คำอธิบาย
string อักขระขวาสุด

การใช้งาน

ฟังก์ชันนี้ส่งคืน:
  • สตริงว่างถ้า n เกินความยาว ของสตริง
  • ทั้งสตริงถ้า n เป็นค่าลบ
  • ทั้งสตริงถ้า n เป็น 0
  • สตริงว่างถ้าไม่พบ subString

ตัวอย่าง

(1) ตัวอย่างนี้รับ 5 อักขระ ซ้ายสุด 6 อักขระขวาสุด และอักขระที่น้อยกว่า 6 ตัวแรก และ 7 ตัวสุดท้าย
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, 5);
var price = @Right(lineitem, 6);
var description = @LeftBack(@RightBack(lineitem, 6), 7);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) ตัวอย่างนี้รับค่าอักขระซ้ายสุดจนถึงช่องว่างแรก อักขระขวาสุดย้อนกลับไปถึงช่องว่างสุดท้าย และอักขระระหว่าง ช่องว่างแรกและสุดท้าย

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var code = @Left(lineitem, " ");
var price = @RightBack(lineitem, " ");
var description = @LeftBack(@Right(lineitem, " "), " ");
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

@Round (JavaScript)

ปัดเศษตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Round(value:double) : double

@Round(value:double, factor:double) : double

พารามิเตอร์ คำอธิบาย
value ตัวเลขที่จะปัดเศษ
factor ปัจจัยการปัดเศษ ดีฟอลต์เป็น 1
ค่าส่งคืน คำอธิบาย
double ตัวเลขที่ปัดเศษ

การใช้งาน

ปัจจัยการปัดเศษดีฟอลต์ (1) ปัดเศษ ตัวเลขเป็นเลขจำนวนเต็ม ปัจจัยการปัดเศษที่เป็นกำลัง 10 จะมี นัยยะสำคัญมากกว่าหรือน้อยกว่าค่าฐานแบบทศนิยม ตัวอย่างเช่น ถ้าตัวเลข ที่จะถูกปัดเศษคือ 654.321 ปัจจัยการปัดเศษ 0.001 ได้ 654.321, 0.01 ได้ 654.32, 0.1 ได้ 654.3, 1 ได้ 654, 10 ได้ 650 และ 100 ได้ 700

พารามิเตอร์ และค่าส่งคืนสามารถเป็นอาร์เรย์ การดำเนินการดำเนินการกับอิลิเมนต์ที่ สอดคล้องกัน

ตัวอย่าง

ตัวอย่างนี้แสดงผลของ การปัดเศษหลายๆ จำนวน
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var pi = Math.PI;

p("Round 25.1 = " + @Round(25.1)); // 25
p("Round 25.5 = " + @Round(25.5)); //26
p("Pi rounded to 0.001 = " + @Round(pi, 0.001)); // 3.142
p("Round 255 to 100 = " + @Round(255, 100)); // 300

@Second (JavaScript)

ส่งคืนวินาทีจากวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Second(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int วินาทีของวันที่และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@Select (JavaScript)

ส่งคืนค่าจากรายการพารามิเตอร์

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Select(position:int, list:...) : string
พารามิเตอร์ คำอธิบาย
position จำนวนของค่าในรายการ พารามิเตอร์ 2 ค่าแรกในรายการ อยู่ที่ตำแหน่ง 1
list จำนวนของค่าใดๆ ที่มีชนิดใดๆ ค่า สามารถเป็นอาร์เรย์
ค่าส่งคืน คำอธิบาย
string ค่าที่ตำแหน่งที่ระบุ หรือสตริง ว่างถ้าตำแหน่งอยู่นอกช่วง

ตัวอย่าง

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function getMonth(n) {
	return(@Select(n, "January", "February", "March",
		"April", "May", "June", "July", "August",
		"September", "October", "November", "December"));
}

for(var i = 1; i < 13; i++) {
	p(getMonth(i));
}

@SetField (JavaScript)

ตั้งค่าไอเท็มเอกสารที่สัมพันธ์กับเพจปัจจุบันให้มี ค่า

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@SetField(name:string, value:any) : void
พารามิเตอร์ คำอธิบาย
name ชื่อของไอเท็มในเอกสาร Domino ที่โยงกับ XPage ปัจจุบัน
value ค่าใหม่ของไอเท็ม

การใช้งาน

หลังการตั้งค่า ฟังก์ชันนี้ รีโหลดเพจปัจจุบันเพื่อแสดงผลค่าใหม่

ตัวอย่าง

นี้คือเหตุการณ์ onBlur ของกล่อง แก้ไขที่โยงกับตัวแปร requestScope subject เมื่อผู้ใช้ออกจากกล่องแก้ไข ค่าจะถูกใช้เพื่อตั้งค่าไอเท็ม Subject ของเอกสารที่สัมพันธ์กับ XPage
@SetField("Subject", requestScope.subject)

@Subset (JavaScript)

แยกเซ็ตย่อยรายการจากซ้ายไปขวา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Subset(list:any, length:int) : any
พารามิเตอร์ คำอธิบาย
list รายการ
length จำนวนสมาชิกในรายการใหม่ ไม่สามารถ เป็น 0 จำนวนลบถือเป็นจำนวนบวก ข้อมูลจำเพาะที่เกิน ความยาวรายการหมายความว่าทั้งรายการ
ค่าส่งคืน คำอธิบาย
any รายการใหม่

การใช้งาน

รายการเป็นอาร์เรย์

ตัวอย่าง

ตัวอย่างนี้สร้างเซ็ตย่อยรายการจนถึง และรวมสมาชิกที่ระบุ
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = @List("Paris", "Berlin", "Moscow", "London");
var city = "Berlin";
var n = @Member(city, cities);
if(n > 0) {
	var citiesSubset = @Subset(cities, n);
	for(var i = 1; i <= @Count(citiesSubset); i++) {
		p(@Element(citiesSubset, i));
	}
} else {
	p(city + " is not listed");
}
/*
<<<Paris>>>
<<<Berlin>>>
*/

@Success (JavaScript)

ส่งคืน 1 (จริง)

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Success() : int
ค่าส่งคืน คำอธิบาย
int 1 (จริง)

การใช้งาน

ใน Notes, @function นี้ถูกใช้ในสูตรการตรวจสอบความถูกต้อง, ซึ่งไม่ได้อยู่ใน XPages

@Sum (JavaScript)

ผลรวมตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Sum(value:...) : any
พารามิเตอร์ คำอธิบาย
value ตัวเลขหรืออาร์เรย์ของตัวเลข อย่างน้อยหนึ่งพารามิเตอร์ ได้รับอนุญาต
ค่าส่งคืน คำอธิบาย
any ผลรวมของตัวเลข

การใช้งาน

พารามิเตอร์สเกลาร์และสมาชิกของ พารามิเตอร์อาร์เรย์ทั้งหมดถูกหาผลรวม

ตัวอย่าง

(1) ตัวอย่างนี้หาผลรวมของลำดับ ตัวเลข
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var n = 16;
var s = new Array();
for(var i = 1; i <= n; i++) {
	s.push(i);
}
p("Sum of 1 to " + n + " = " + @Sum(s));

(2) ตัวอย่างนี้ หาผลรวมตัวเลข 4 จำนวน

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

p("Sum of 1 to 4 = " + @Sum(1, 2, 3, 4));

@Text (JavaScript)

แปลงค่าเป็นสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Text(value:any) : string
พารามิเตอร์ คำอธิบาย
value ค่าที่สามารถแปลงเป็นสตริง
ค่าส่งคืน คำอธิบาย
string สตริงเทียบเท่า หรือสตริงว่างถ้า ไม่สามารถแปลงค่า

ตัวอย่าง

ตัวอย่างนี้แสดงการแปลง ค่าตัวเลขและวันที่เป็นสตริง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var n = 1/3;
p(@Text(n)); // <<<0.3333333333333333>>>
var d = @Now();
p(@Text(d)); // <<<4/12/06 1:44 PM>>>

@TextToNumber (JavaScript)

แปลงสตริงเป็นตัวเลข

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@TextToNumber(value:string) : double
พารามิเตอร์ คำอธิบาย
value สตริงที่แสดงตัวเลขในูปแบบ จำนวนเต็ม ทศนิยม หรือแบบวิทยาศาสตร์ ไม่สามารถเป็นนิพจน์
ค่าส่งคืน คำอธิบาย
Date ตัวเลขเทียบเท่า หรือ 0 ถ้าไม่สามารถ แปลงสตริง

ตัวอย่าง

ตัวอย่างนี้แสดงการแปลง สตริงต่างๆ ให้เป็นตัวเลข
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var n = "12";
p("text is 12, n is " + @TextToNumber(n)); // <<<text is 12, n is 12>>>
var n = "1.2";
p("text is 1.2, n is " + @TextToNumber(n)); // <<<text is 1.2, n is 1.2>>>
var n = "1.2e-4";
p("text is 1.2e-4, n is " + @TextToNumber(n)); // <<<text is 1.2e-4, n is 0.00012>>>
var n = "5 * 4.1";
p("text is 5 * 4.1, n is " + @TextToNumber(n)); // <<<text is 5 * 4.1, n is 0>>>
var n = "foo";
p("text is foo, n is " + @TextToNumber(n)); // <<<text is foo, n is 0>>>

@TextToTime (JavaScript)

แปลงสตริงเป็นวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@TextToTime(value:string) : Date
พารามิเตอร์ คำอธิบาย
value สตริงที่แสดงวันที่และเวลาใน รูปแบบโลแคล
ค่าส่งคืน คำอธิบาย
Date วันที่และเวลาเทียบเท่า หรือสตริงว่าง ถ้าไม่สามารถแปลงสตริงพารามิเตอร์ ถ้าสามารถแปลงวันที่ แต่ไม่สามารถแปลงเวลา หรือค่าหายไป เวลาจะปรากฏเป็น 0 ชั่วโมง

ตัวอย่าง

ตัวอย่างนี้แสดงการแปลง สตริงต่างๆ เป็นวันที่
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

function printDate(d) {
	p("Text = " + d);
	p("Year = " + @Year(@TextToTime(d)));
	p("Month = " + @Month(@TextToTime(d)));
	p("Day = " + @Day(@TextToTime(d)));
	p("Hour = " + @Hour(@TextToTime(d)));
	p("Minute = " + @Minute(@TextToTime(d)));
	p("Second = " + @Second(@TextToTime(d)));
}

printDate("4/1/06");
printDate("04/01/2006");
printDate("04/01/2006 1:05 PM");

@Time (JavaScript)

สร้างวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Time(date:Date) : Date

@Time(years:int, months:int, days:int, hours:int, minutes:int, seconds:int) : Date

@Time(hours:int, minutes:int, seconds:int) : Date

พารามิเตอร์ คำอธิบาย
date วันที่และเวลา
years ปีของวันที่และเวลา
months เดือนของวันที่และเวลา
days วันของวันที่และเวลา
hours ชั่วโมงของวันที่และเวลา
minutes นาทีของวันที่และเวลา
seconds วินาทีของวันที่และเวลา
ค่าส่งคืน คำอธิบาย
Date วันที่และเวลาใหม่

การใช้งาน

ฟังก์ชันนี้ระบุวันที่และเวลา ดังนี้:
  • ถ้ารายการพารามิเตอร์ระบุอ็อบเจ็กต์ Date ฟังก์ชันนี้ใช้ เฉพาะส่วนของเวลา และตั้งค่าวันที่เป็น 1/1/1900
  • ถ้ารายการพารามิเตอร์ระบุชั่วโมง นาที และวินาที ฟังก์ชัน นี้ตั้งค่าเวลาตามที่ระบุ และตั้งค่าวันที่เป็น 1/1/1900
  • ถ้ารายการพารามิเตอร์ระบุปี เดือน วัน ชั่วโมง นาที และวินาที ฟังก์ชันนี้ตั้งค่าวันที่และเวลาตามที่ระบุ

ตัวอย่าง

(1) ตัวอย่างนี้สร้างวันที่และ เวลาจากอ็อบเจ็กต์ Date
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var now = @Now();
var time1 = @Time(now);
p("Now = " + now);
p("Time = " + time1);p("Now = " + now); // <<<Now = 4/11/06 9:35 AM>>>
p("Date = " + date1); // <<<Time = 1/1/00 9:35 AM>>>

(2) ตัวอย่างนี้สร้างวันที่และเวลาโดยใช้ เดือน วัน และ เวลาจาก @Now และระบุปีตามค่าที่ได้

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var now = @Now();
var month = @Month(now);
var day = @Day(now);
var hour = @Hour(now);
var minute = @Minute(now);
var second = @Second(now);
var time1 = @Time(1999, month, day, hour, minute, second);
p("Now = " + now);
p("Time = " + time1);
<<<Now = 4/11/06 9:59 AM>>>
<<<Time = 4/11/99 9:59 AM>>>

@Today (JavaScript)

ส่งคืนค่าวันที่ของวันนี้

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Today() : Date
ค่าส่งคืน คำอธิบาย
Date วันที่ของวันนี้

การใช้งาน

ฟังก์ชันนี้ระบุเฉพาะวันที่ เวลา ถูกตั้งค่าเป็น 0 ชั่วโมง

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลาโดยใช้วันที่จาก @Today และระบุ เวลาอย่างแท้จริง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Today();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var today = @Date(year, month, day, 13, 30, 0);
p("Today at 1:30PM = " + today.toLocaleString());

@Tomorrow (JavaScript)

ส่งคืนวันที่ของวันพรุ่งนี้

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Tomorrow() : Date
ค่าส่งคืน คำอธิบาย
Date วันที่ของวันพรุ่งนี้

การใช้งาน

ฟังก์ชันนี้ระบุเฉพาะวันที่ เวลา ถูกตั้งค่าเป็น 0 ชั่วโมง

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงหลังเวลาปัจจุบันโดยใช้วันที่จาก @Tomorrow และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Tomorrow();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var tomorrow = @Date(year, month, day, hour, minute, second);
p("24 hours later = " + tomorrow.toLocaleString());

@Trim (JavaScript)

ลบช่องว่างนำหน้า และเติมท้ายสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Trim(value:string) : string
พารามิเตอร์ คำอธิบาย
value สตริงหรืออาร์เรย์ของสตริง
ค่าส่งคืน คำอธิบาย
string สตริงที่ถูกตัดหรืออาร์เรย์ของสตริงที่ถูกตัด

การใช้งาน

ฟังก์ชันนี้ลบช่องว่างนำหน้า และ เติมท้าย แต่ไม่ลดช่องว่างระหว่างอักขระ

ถ้าพารามิเตอร์ เป็นอาร์เรย์ ผลลัพธ์จะเป็นอาร์เรย์ที่มีอิลิเมนต์ทั้งหมดถูกตัด

ตัวอย่าง

ตัวอย่างนี้ตัดอิลิเมนต์ของ อาร์เรย์และสตริง
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var citiesArray = new Array("  Paris", "Berlin", "  London", "Moscow  ");
p(@Trim(citiesArray)); // <<<Paris>>>,<<<Berlin>>>,<<<London>>>,<<<Moscow>>>

var cities = "  Paris,   Berlin,    London,   Moscow   ";
p(@Trim(cities)); // <<<Paris,   Berlin,    London,   Moscow>>>

@True (JavaScript)

ส่งคืนตัวเลข 1

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@True() : int
ค่าส่งคืน คำอธิบาย
int ตัวเลข 1

การใช้งาน

สำหรับค่า "โลจิคัล" @functions ใช้ ตัวเลข 1 สำหรับค่าจริง และ 0 สำหรับค่าเท็จ หมายเลข 1 สามารถแสดง ด้วย @True (JavaScript) หรือ @Yes (JavaScript)

ตัวอย่าง

. หมายเลข 0 สามารถแสดงด้วย @False (JavaScript) หรือ @No (JavaScript)

ห้ามใช้ JavaScript ค่า true และ false สำหรับค่า "logical" @function

ตัวอย่าง ต่อไปนี้แสดงวิธีทดสอบ @function ที่ส่งคืนค่า "โลจิคัล"
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

if(@IsNewDoc() == @True())
	p("Creating new document");
else
	p("Opening old document");

/* Do not do this
if(@IsNewDoc())
	p("Creating new document");
else
	p("Opening old document");
*/

@Unique (JavaScript)

ส่งคืนค่าข้อความเฉพาะแบบสุ่ม (ไม่มีพารามิเตอร์) หรือ ลบค่าซ้ำออกจากรายการ (พารามิเตอร์)

มีฟังก์ชันต่างกันสองฟังก์ชันที่มีชื่อเหมือนกัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Unique() : string

@Unique(list:any) : any

พารามิเตอร์ คำอธิบาย
list รายการที่คุณต้องการลบค่าซ้ำออก
ค่าส่งคืน คำอธิบาย
string ค่าข้อความเฉพาะแบบสุ่ม
any รายการที่มีค่าซ้ำถูกลบออก

ตัวอย่าง

(1) ตัวอย่างนี้สร้างตัวเลขสุ่ม 16 จำนวน
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

for(var i = 0; i < 16; i++) {
	p(@Unique());
}
/* Typical output - each set of random numbers will be different
<<<1mg6q84zlxj4>>>
<<<nr0c4d9kledc>>>
<<<r99sgrz4nabk>>>
<<<n1m2em3vpjwg>>>
<<<17adehz6fjk74>>>
<<<1x1zziieshk3k>>>
<<<ts3symq0itxc>>>
<<<lcd0v8qx1slc>>>
<<<7szxv67dolj4>>>
<<<1ehmqvydv9m9s>>>
<<<1qgi5shnfjv9c>>>
<<<wexh8es5p0jk>>>
<<<12w43nma5t1xc>>>
<<<m9qzkrkya5fk>>>
<<<51tbn0z73bi8>>>
<<<ne5jfupnojk0>>>
*/

(2) ตัวอย่างนี้ลบค่าซ้ำออกจาก รายการ

function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = @List("Paris", "Berlin", "Paris", "Moscow",
	"Paris", "London", "Moscow");

cities = @Unique(cities);
for(var i = 1; i <= @Count(cities); i++) {
	p(@Element(cities, i));
}
/*
<<<Paris>>>
<<<Berlin>>>
<<<Moscow>>>
<<<London>>>

*/

@UpperCase (JavaScript)

แปลงสตริงเป็นตัวพิมพ์ใหญ่

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@UpperCase(value:string) : string
พารามิเตอร์ คำอธิบาย
value สตริงหรืออาร์เรย์ของสตริง
ค่าส่งคืน คำอธิบาย
string สตริงหรืออาร์เรย์ของสตริงที่แปลง

การใช้งาน

ฟังก์ชันนี้มีผลต่ออักขระแบบตัวอักษร ในสตริงเปลี่ยนอักขระตัวพิมพ์เล็ก เป็นตัวพิมพ์ใหญ่ที่ตรงกัน

ถ้า พารามิเตอร์เป็นอาร์เรย์ ผลลัพธ์จะเป็นอาร์เรย์ที่มีอิลิเมนต์ทั้งหมด ถูกแปลง

ตัวอย่าง

ประโยชน์ของการใช้ฟังก์ชันนี้ คือเพื่อทำการเปรียบเทียบไม่ว่าจะมีขนาดตัวพิมพ์ใด ดังแสดงใน ตัวอย่างนี้
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var cities = new Array("Paris", "foo", "Berlin", "Foo", "Moscow");
//var cities = new Array("Paris", "Berlin", "London", "Moscow");

if(@Contains(@UpperCase(cities), "FOO") == @True()) {
	for(var i = 0, j = 0; i < cities.length; i++) {
		if(@UpperCase(cities[i]) != "FOO") {
			cities[j] = cities[i];
			j++;
		}
	}
	for(; i > j; i--) {
		cities.pop();
	}
}
p(cities);

@UserName (JavaScript)

ส่งคืน distinguished name ของผู้ใช้ปัจจุบัน

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@UserName() : string

@UserName(index:int) : string

พารามิเตอร์ คำอธิบาย
index ไม่มีการดำเนินการในเวอร์ชัน 2.6
ค่าส่งคืน คำอธิบาย
string Distinguished name ของผู้ใช้ปัจจุบัน

การใช้งาน

ใน Notes, ดัชนี 0 อ้างถึงชื่อหลัก และดัชนี 1 อ้างถึง ชื่อสำรอง ใน XPages, ข้อมูลจำเพาะของดัชนีไม่ใช่ตัวปัญหา @function นี้ส่งคืนชื่อผู้ใช้หลักเสมอ

ดูที่ @Name (JavaScript) สำหรับ คำอธิบาย distinguished names

ตัวอย่าง

ตัวอย่างนี้ส่งคืนคอมโพเนนต์ชื่อสามัญ ของชื่อผู้ใช้ปัจจุบัน
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var nm = @Name("[CN]", @UserName());
if(@ClientType() == "Web")
	p("Logged in from web: " + nm);
else
	p("Not logged in from web" + nm);

@Weekday (JavaScript)

ส่งคืนวันในสัปดาห์โดยวันอาทิตย์คือ 1

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@WeekDay(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int วันในสัปดาห์ที่สอดคล้องกับ วันที่และเวลา วันอาทิตย์คือ 1 วันจันทร์คือ 2 และต่อไปตามลำดับ

การใช้งาน

คำนวณวันในสัปดาห์ และส่งคืน หมายเลขที่ระบุวัน หมายเลขวันในสัปดาห์คือ 1 ถึง 7 โดยวันอาทิตย์ = 1 วันจันทร์ = 2 และต่อไปตามลำดับ

ตัวอย่าง

ตัวอย่างนี้รับค่าวันในสัปดาห์ สำหรับวันนี้
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var w = "";
switch(@Weekday(@Today())) {
	case 1 : w = "Sunday"; break;
	case 2 : w = "Monday"; break;
	case 3 : w = "Tuesday"; break;
	case 4 : w = "Wednesday"; break;
	case 5 : w = "Thursday"; break;
	case 6 : w = "Friday"; break;
	case 7 : w = "Saturday"; break;
}
p("Today is " + w + ".");

@Word (JavaScript)

ส่งคืนคำจากสตริง

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Word(value:string, separator:string, n:int) : string
พารามิเตอร์ คำอธิบาย
value สตริงหรือรายการสตริงที่จะถูกตรวจสอบ
separator ชุดข้อมูลของอักขระที่ถือเป็นตัวคั่น อักขระระหว่างตัวคั่นที่จะถือเป็นคำ
n หมายเลขของคำโดย 1 คือคำ แรก
ค่าส่งคืน คำอธิบาย
string หมายเลขเวิร์ด n ใน value ส่งคืนคำแรกถ้า n เป็น 0 หรือค่าลบ ส่งคืน สตริงว่างถ้า n เกินจำนวนคำ ในสตริง

การใช้งาน

ถ้า value เป็นอาร์เรย์ ของสตริง แต่ละอิลิเมนต์ถูกประมวลผลเป็นพารามิเตอร์ 2 และ 3 และค่าส่งคืนเป็นอาร์เรย์ที่มีอิลิเมนต์สอดคล้องกัน

ตัวอย่าง

ตัวอย่างนี้แยกคำออกจาก สตริงโดยคำจะถูกคั่นด้วยเครื่องหมายจุลภาคหรือช่องว่าง
function p(stuff) {
	print("<<<" + stuff + ">>>"); 
 }

var cities = "Paris, Berlin, Moscow, London";

var n = 1;
var city = @Word(cities, ", ", n);
while(city != "") {
	p(n + " " + city);
	n++;
	city = @Word(cities, ", ", n);
}/*
<<<1 Paris>>>
<<<2 Berlin>>>
<<<3 Moscow>>>
<<<4 London>>>
*/

@Year (JavaScript)

ส่งคืนปีจากวันที่และเวลา

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Year(time:Date) : int
พารามิเตอร์ คำอธิบาย
time วันที่และเวลา
ค่าส่งคืน คำอธิบาย
int ปีของวันที่และเวลา

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

@Yes (JavaScript)

ส่งคืนค่า 1

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Yes() : int
ค่าส่งคืน คำอธิบาย
int ค่า 1

การใช้งาน

สำหรับค่า "โลจิคัล" @functions ใช้ ตัวเลข 1 สำหรับค่าจริง และ 0 สำหรับค่าเท็จ หมายเลข 1 สามารถแสดง ด้วย @True (JavaScript) หรือ @Yes (JavaScript)

ตัวอย่าง

. หมายเลข 0 สามารถแสดงด้วย @False (JavaScript) หรือ @No (JavaScript)

ห้ามใช้ JavaScript ค่า true และ false สำหรับค่า "logical" @function

ตัวอย่าง ต่อไปนี้แสดงวิธีทดสอบ @function ที่ส่งคืนค่า "โลจิคัล"
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

if(@IsNewDoc() == @Yes())
	p("Creating new document");
else
	p("Opening old document");

/* Do not do this
if(@IsNewDoc())
	p("Creating new document");
else
	p("Opening old document");
*/

@Yesterday (JavaScript)

ส่งคืนวันที่ของเมื่อวานนี้

กำหนดไว้ใน

@Functions (JavaScript)

ไวยากรณ์

@Yesterday() : Date
ค่าส่งคืน คำอธิบาย
Date วันที่ของเมื่อวานนี้

การใช้งาน

ฟังก์ชันนี้ระบุเฉพาะวันที่ เวลา ถูกตั้งค่าเป็น 0 ชั่วโมง

ตัวอย่าง

ตัวอย่างนี้สร้างวันที่และ เวลา 24 ชั่วโมงก่อนเวลาปัจจุบันโดยใช้วันที่จาก @Yesterday และ เวลาจาก @Now
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var date1 = @Yesterday();
var year = @Year(date1);
var month = @Month(date1);
var day = @Day(date1);
var date2 = @Now();
var hour = @Hour(date2);
var minute = @Minute(date2);
var second = @Second(date2);
var yesterday = @Date(year, month, day, hour, minute, second);
p("24 hours ago = " + yesterday.toLocaleString());

การพิมพ์ตัวแปรโดยนัย (JavaScript)

คุณสามารถเชื่อมโยงตัวแปรที่มีชนิดข้อมูลกับเอกสาร ที่โค้ดและเนื้อหาโดยตรงของคุณช่วย

ไวยากรณ์สำหรับการพิมพ์ตัวแปรเป็นดังนี้:
variablename:datatype
โค้ด ต่อไปนี้จากฟิลด์ที่คำนวณหายความว่า db คืออ็อบเจ็กต์ NotesDatabase:
var db:NotesDatabase = session.getCurrentDatabase();
return db.getFileName()
ชนิดข้อมูลโดยนัยไม่มีผล ตอนรันไทม์ ถ้าโค้ดของคุณระบุ db:Foo หรือ db:NotesStream, db จะ ยังคงถูกถือเป็นอ็อบเจ็กต์ NotesDatabase ตอนรันไทม์ ค่าส่งคืนของ session.getCurrentDatabase() เป็นตัว กำหนดชนิด

ถ้าไม่มีการระบุการเชื่อมโยงชนิดข้อมูล การช่วยเนื้อหา จะกำหนดชนิดจากบริบท ถ้าเป็นไปได้ ถ้ามีการระบุการเชื่อมโยง ชนิดข้อมู, การช่วยเนื้อหาจะใช้ชนิดที่ระบุ ในกรณีส่วนใหญ่ การช่วยเนื้อหาจะทำงานเหมือนกันไม่ว่าจะมีการระบุการเชื่อมโยงหรือไม่ บางครั้ง ข้อมูลจำเพาะของชนิดข้อมูลจะมีคำแนะนำที่จำเป็น

หมายเหตุ: ระมัดระวัง ในการระบุชนิดข้อมูลที่ถูกต้องเป็นการเชื่อมโยง ถ้าคุณระบุ ชนิดข้อมูลผิด การช่วยเนื้อหาจะใช้ชนิดข้อมูลที่ผิดนั้น

การฝัง Java ใน JavaScript

โค้ด Java สามารถฝังโดยตรง ในโค้ด JavaScript

คลาส Java

คลาส Java สามารถเข้าถึงได้จากโค้ด JavaScript โดยการระบุชื่อ แบบเต็ม ตัวอย่างเช่น java.lang.Class หรือ java.util.Random แพ็กเกจที่มีคลาสต้องมีอยู่เป็นไลบรารีที่แบ่งใช้ บนเซิร์ฟเวอร์ แพ็กเกจ Java มาตรฐาน มีอยู่บนเซิร์ฟเวอร์ทั้งหมด แพ็กเกจอื่นๆ ต้องถูกติดตั้ง

ตัวอย่างต่อไปนี้เป็นฟิลด์ที่คำนวณ โดยเรียกใช้คลาส Random ใน java.util

var r = java.util.Random();
r.nextInt();

ให้ความระมัดระวังเมธอดที่โอเวอร์โหลดเนื่องจาก JavaScript เป็น typeless ตัวอย่างเช่น:

class myClass {
   myMethod(int val);
   myMethod(double val);
}

ในกรณีนี้ คุณต้องการให้พารามิเตอร์เป็นอ็อบเจ็กต์ ที่จะถูกแปลอย่างถูกต้องบนฝั่ง Java:

c.myMethod(new java.lang.Double(0.5));

คลาสผู้ใช้

คลาส Java ผู้ใช้ สามารถสร้างขึ้นในแอ็พพลิเคชันโดยใช้ Domino หรือ Java perspective และเรียกใช้ใน JavaScript โดย การระบุชื่อแบบเต็ม คลาสต้องเป็นของแพ็กเกจ (ไม่ใช่แพ็กเกจดีฟอลต์)

การสร้างคลาสผู้ใช้

ใน Domino perspective ไปที่ Code > Java เพื่อ สร้างและรักษาคลาส Java ใน Java perspective ไป ที่ Code/Java

ต่อไปนี้คือโค้ด Java ตัวอย่างที่คุณอาจวางในแอ็พพลิเคชันของคุณ

package pkg1;
public class Class2 {
	public String hello() {
		return "Hello world!";
	}
}

ฟิลด์ที่คำนวณต่อไปนี้เรียกใช้ฟังก์ชัน Java ในคลาสผู้ใช้

var mc = new pkg1.Class2();
return mc.hello();

การใช้อิลิเมนต์การออกแบบ Java ใน Domino perspective

สำหรับ Code > Java ใน Domino perspective คุณ สามารถเลือกให้สร้างอิลิเมนต์ Class, Interface หรือ Enum ใหม่ การสร้างและการเก็บรักษาอิลิเมนต์ เหล่านี้ทำผ่านเอดิเตอร์ Eclipse Java มาตรฐาน

ใน Java perspective แพ็กเกจ ปรากฏเป็นไดเร็กทอรีปกติ ใน Designer perspective แพ็กเกจ ปรากฏตามหลังสแลช ตัวอย่างเช่น myClass2.java ใน แพ็กเกจ pkg1 ปรากฏเป็น pkg1/myClass2.java ใน Applications Navigator

การลบอิลิเมนต์การออกแบบ Java ยังลบไฟล์คลาสด้วย การเปลี่ยนชื่ออิลิเมนต์จะลบไฟล์คลาส และปรับปัจจัยอิลิเมนต์ทั้งหมด

.classpath สำรหับแอ็พพลิเคชัน Domino รวม Code\Java ดังนั้น อิลิเมนต์การออกแบบเหล่านี้จะถูกคอมไพล์โดยอัตโนมัติ ไฟล์คลาสถูก เก็บภายในแอ็พพลิเคชัน และถูกแยกด้วยวิธีการเดียวกับ XPages ในระบบไฟล์เสมือน ไฟล์คลาสปรากฏแยกจากไฟล์ .java ภายใต้ WebContent\WEB-INF\classes คุณสามารถเห็น ไอเท็มคลาสที่เก็บภายใน note เมื่อคุณดูทีฟิลด์บน คุณสมบัติ note การออกแบบ (หรือใน NotesPeek)

อาร์เรย์ Java

อาร์เรย์ Java สามารถฝังในโค้ด JavaScript โดยไม่ต้องมีการประกาศหรือการรวม ก่อนหน้า โดยจะมีความสามารถในการสร้างอาร์เรย์ หลายมิติ และส่งอาร์เรย์เป็นพารามิเตอร์ไปยังเมธอด Java ที่อยู่ในโค้ด JavaScript

ตัวอย่างต่อไปนี้เป็นฟิลด์ที่คำนวณที่สร้าง ใส่ข้อมูล และแสดงอาร์เรย์หลายมิติ

var a = new int[2][3];
for(var i = 0; i < 2; i++) {
	for(var j = 0; j < 3; j++) {
		a[i][j] = i + j;
	}
}
a[0][0] +  " " + a[1][0] + "\n" +
a[0][1] +  " " + a[1][1] + "\n" +
a[0][2] +  " " + a[1][2]

ฟิลด์ที่คำนวณให้ผลลัพธ์ ดังนี้:

0 1
1 2
2 3

อ็อบเจ็กต์ JavaScript

อ็อบเจ็กต์ JavaScript (เมื่อสร้าง ด้วย new Object()) ถูกแปลงเป็นแม็พของคุณสมบัติ โดยอัตโนมัติเมื่อใช้เป็นอาร์กิวเมนต์สำหรับเมธอด Java แม็พคืออินเตอร์เฟส Java ที่มีรายการ ของคู่ชื่อ/ค่า ตัวอย่างเช่น คุณควรส่งแม็พเมื่อคุณ เรียกใช้อะแด็ปเตอร์ XML

ต่อไปนี้เป็นตัวอย่างวิธีสร้างแม็พ:

map = new Object();
map.property1 = "Value 1";
map.property2 = "Value 2";
javaMethod( map );

ความสามารถนี้ช่วยให้ง่ายต่อ การใช้แม็พจาก JavaScript ตัวอย่าง ต่อไปนี้แสดงวิธีเรียกใช้อะแด็ปเตอร์ XML:

function f() {
	obj = new Object();
	obj.property1 = 7934;
	obj.property2 = "Value 2";
	doc = new DOMDocument();
	doc.loadFromXMLAdapter("test",obj,null);
}

การแปลงพารามิเตอร์

พารามิเตอร์ JavaScript ถูก ส่งโดยค่า (อาร์เรย์ JavaScript และอ็อบเจ็กต์ ที่ใช้เป็นพารามิเตอร์ไม่ถูกแก้ไขโดยโค้ด Java)

การแปลงพารามิเตอร์เป็นดังนี้ตามรูปแบบชนิด:
JavaScript Java
Boolean Boolean
byte ไบต์
short Short
int จำนวนเต็ม
long แบบยาว
float Float
double Double
Object java.util.MapHashMap ชั่วคราวที่ สร้างโดยมีคู่ ชื่อ/ค่าคุณสมบัติทั้งหมด ค่าดั้งเดิม (number, Boolean, string) ถูกแปลงเป็น java.lang.String ขณะที่อ็อบเจ็กต์ Java ยังคงเป็นเหมือนเดิม
char java.lang.Character – เมื่อ แปลง อักขระตัวแรกเท่านั้นที่ถูกแยกออก
ไม่ได้นิยามไว้ ไม่สามารถกำหนดได้
null สร้างเป็นอ็อบเจ็กต์ Java ใดๆ และกำหนดค่า Java null
Date java.util.Date
Array อาร์เรย์ Java ชั่วคราว ของชนิดที่ถูกต้องถูกสร้างและกรองตามการแปลงค่าทั้งหมด ในอาร์เรย์ JavaScript
อ็อบเจ็กต์ Java ที่ Wrap อ็อบเจ็กต์ Java ใดๆ ที่เข้ากันได้ (isAssignableFrom) ถูกส่งเป็น การแปลงที่ไม่มี

ค่าที่ส่งคืน Java ถูกส่ง ดังนี้:

Java JavaScript
void ไม่ได้นิยามไว้
หมายเลขใดๆ ว่าเป็น primitive หรือ object number
java.lang.String string
java.util.Date Date
อาร์เรย์ ไม่แปลง
อ็อบเจ็กต์อื่นๆ Wrapped และใช้ตามที่เป็น

คีย์เวิร์ด JavaScript และเมธอด Java

คุณไม่สามารถใช้คีย์เวิร์ด JavaScript ในไวยากรณ์ Java แม้ว่าคำจะถูกต้องใน Java

ตัวอย่างเช่น delete คือคีย์เวิร์ด JavaScript ดังนั้นไวยากรณ์ต่อไปนี้ไม่ถูกต้อง:
myObject.delete(params)

ใน กรณีนี้ วิธีแก้ปัญหาคือใช้ไวยากรณ์คุณสมบัติเพื่อเรียกใช้ เมธอด:

myObject["delete"](params)

แอ็คชันแบบง่าย (JavaScript)

แอ็คชันแบบง่ายดำเนินกิจกรรมที่โปรแกรมล่วงหน้าที่ สามารถแก้ไขได้ด้วยอาร์กิวเมนต์

แอ็คชันแบบง่ายอยู่ในมุมมอง เหตุการณ์ สำหรับเพจหรือตัวควบคุม มีชุดแอ็คชันแบบง่ายแยกต่างหากสำหรับไคลเอ็นต์ และเซิร์ฟเวอร์

ตัวอย่างเช่น ปุ่มที่โหลดอีกเพจขึ้นบนเบราว์เซอร์ถูก ประยุกต์ใช้โดยอันดับแรกเลือก onclick, เซิร์ฟเวอร์ และ แอ็คชันแบบง่าย ในมุมมอง เหตุการณ์ จากนั้นคลิก เพิ่มแอ็คชัน และเติมข้อมูลไดอะล็อกบ็อกซ์ เพิ่มแอ็คชันแบบง่าย

ชนิดของแอ็คชันแบบง่ายมีดังนี้:
  • แบบง่าย
  • คอมโพเนนต์
  • ขั้นสูง
ตารางต่อไปนี้แสดงรายการแอ็คชันแบบง่ายบนไคลเอ็นต์:
ชื่อ ไวยากรณ์ คำอธิบาย
เรียกใช้งานไคลเอ็นต์ สคริปต์ executeClientScript ![CDATA[JavaScript]] (แบบง่าย) เรียกใช้งานสคริปต์ฝั่งไคลเอ็นต์
เผยแพร่ คุณสมบัติคอมโพเนนต์ publishValue name="eventname" value="value" type="type" (คอมโพเนนต์) เผยแพร่เหตุการณ์คอมโพเนนต์
เผยแพร่คอลัมน์ มุมมอง publishViewColumn name="eventname" columnName="columnname" type="type" (คอมโพเนนต์) เผยแพร่ค่าของคอลัมน์มุมมอง เป็นเหตุการณ์คอมโพเนนต์
ตารางต่อไปนี้แสดงรายการเซิร์ฟเวอร์แบบง่ายบนเซิร์ฟเวอร์:
ชื่อ ไวยากรณ์ คำอธิบาย
เปลี่ยนโหมด เอกสาร changeDocumentMode mode="string" (เอกสาร) เปลี่ยนโหมดการเข้าถึงสำหรับเพจ ปัจจุบัน
ยืนยันแอ็คชัน confirm message="string" (แบบง่าย) ยืนยันแอ็คชัน
สร้างเอกสาร การตอบกลับ createResponse name="string" parentID="string" (เอกสาร) สร้างเอกสารตอบกลับที่เปิด เป็นเอกสารใหม่
ลบเอกสาร deleteDocument name="string" message="string" (เอกสาร) ลบเอกสารปัจจุบันและ เปิดเพจใหม่
ลบ เอกสารที่เลือก deleteSelectedDocuments view="string" "message=string" (เอกสาร) ลบเอกสารที่เลือกในมุมมอง
เรียกใช้งานสคริปต์ executeScript script=#{javascript:<JavaScript>}

executeScript script=#{xpath:<XPath_expression>}

executeScript script=#{<EL_expression>}
(แบบง่าย) เรียกใช้งานสคริปต์, นิพจน์ XPath หรือนิพจน์ EL
แก้ไขฟิลด์ modifyField name="string" value="generic" (เอกสาร) แก้ไขฟิลด์ในเอกสารปัจจุบัน
เปิดเพจ openPage name="string" target="string" documentId="string" (แบบง่าย) แทนเพจปัจจุบัน
บันทึกแหล่งข้อมูล save "name=string" (แบบง่าย) บันทึกแหล่งข้อมูลทั้งหมดบนเพจ ปัจจุบัน และเปิดเพจใหม่
บันทึกเอกสาร saveDocument (เอกสาร) บันทึกเอกสารปัจจุบัน
ส่งเมล sendMail from="name" to="name" cc="name" bcc="name" subject="string" bodyHtml="string" bodyPlain="string" embeddedFormat="JSON|XML" htmlUrl="string" gadgetUrl="string" <xp:this.eeContext> <xp:parameter name="name" value="string"></xp:parameter> ... </xp:this.eeContext> (ระดับต้น) ส่งข้อความอีเมล
ตั้งค่าแอ็คชัน โหมดคอมโพเนนต์ setComponentMode cancel="true" mode="edit" (คอมโพเนนต์) เปลี่ยนโหมดของคอมโพเนนต์
ตั้งค่า setValue binding=javax.faces.el.ValueBinding object value="generic" (ระดับต้น) ตั้งค่าของนิพจน์ที่คำนวณ

เอกสารคู่มือนี้อ้างถึงผลิตภัณฑ์ต่อไปนี้: IBM Domino, IBM Domino Designer, IBM Notes, IBM iNotes, และ IBM Notes Traveler

โหมดเปลี่ยนเอกสาร (แอ็คชันพื้นฐาน)

เปลี่ยนแปลงโหมดเข้าถึงสำหรับเพจปัจจุบัน

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

เอกสาร (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
changeDocumentMode mode="string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
mode หนึ่งในการดำเนินการต่อไปนี้:
  • toggle
  • readOnly
  • autoEdit
  • edit
กล่องคอมโบที่มีอ็อพชัน Toggle, Read Mode, Auto Edit และ Edit Mode รวมกับไอคอนข้าวหลามตัด คุณสามารถคลิกที่ข้าวหลามตัด เพื่อคำนวณค่าแบบไดนามิก

การใช้งาน

ผู้ใช้ต้องมีสิทธิสำหรับ โหนดที่ระบุ มิฉะนั้นจะแสดงโหมดที่น้อยกว่า

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
(1) ปุ่มนี้เปลี่ยนเอกสาร เป็นโหมดแก้ไข
<xp:button value="Edit" id="button1" style="width:110.0px">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:changeDocumentMode mode="edit"></xp:changeDocumentMode>
</xp:this.action></xp:eventHandler></xp:button>
(2) ลิงก์นี้เปลี่ยนเอกสารเป็นโหมดแก้ไขสำหรับผู้ใช้ที่มีสิทธิ แก้ไข เอกสารเปิดขึ้นในโหมดอ่านสำหรับผู้ใช้ที่ไม่มีสิทธิ แก้ไข
<xp:link id="link1" text="Edit this document">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:changeDocumentMode mode="autoEdit"></xp:changeDocumentMode>
</xp:this.action></xp:eventHandler></xp:link>

แอ็คชันยืนยัน (แอ็คชันพื้นฐาน)

แอ็คชันยืนยัน

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

ระดับต้น (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
confirm message="string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
message ข้อความยืนยันที่จะแสดงต่อผู้ใช้ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์สตริงลงในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

การใช้งาน

แอ็คชันแบบง่ายนี้โดยทั่วไปใช้ ในกลุ่มแอ็คชันแบบง่าย โดยแสดงผู้ใช้ด้วยไดอะล็อกบ็อกซ์ที่มี ข้อความพร้อมปุ่มสองปุ่ม:
  • ปุ่ม ตกลง ทำให้การประมวลผลของ กลุ่มแอ็คชันแบบง่ายดำเนินการ
  • ปุ่ม ยกเลิก ทำให้การประมวลผลของ กลุ่มแอ็คชันแบบง่ายหยุดทำงาน

อีกทางหนึ่ง คุณสามารถเขียนสคริปต์ของไคลเอ็นต์และเซิร์ฟเวอร์สำหรับ เหตุการณ์เดียวกัน การส่งคืนค่าจริงจากสคริปต์ไคลเอ็นต์อนุญาตให้สคริปต์ เซิร์ฟเวอร์ทำงาน การส่งคืนค่าเท็จทำให้ออกจากการทำงานทันที

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันแบบง่าย
ปุ่มนี้แสดงไดอะล็อก การยืนยันก่อนเปิดเพจใหม่
<xp:button value="Label" id="button1">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:actionGroup>
		<xp:confirm message="Do you want to proceed?"></xp:confirm>
		<xp:openPage name="/page1.xsp" target="newDocument"></xp:openPage>
	</xp:actionGroup>
</xp:this.action></xp:eventHandler></xp:button>

สร้างเอกสารการตอบกลับ (แอ็คชันพื้นฐาน)

สร้างเอกสารการตอบกลับ และเปิดเป็นเอกสารใหม่

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

เอกสาร (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
createResponse name="string" parentID="string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
name ชื่อของเพจในคอมโพเนนต์ที่แสดง เอกสารการตอบกลับ รายการของเพจคอมโพเนนต์ที่มีอยู่บวกกับ ไอคอนข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัด เพื่อคำนวณค่าแบบไดนามิก
parentID ID ของเอกสารที่มีอยู่ที่จะ เป็นเอกสารพาเรนต์ของเอกสารการตอบกลับ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ ID ในฟิลด์ หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันแบบง่าย
ปุ่มนี้สร้างเอกสาร การตอบสนอง
<xp:button value="Create response document" id="button2"
style="width:141.0px"><xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:createResponse name="/x1.xsp"
		parentId="#{javascript:requestScope.unid}">
	</xp:createResponse>
</xp:this.action></xp:eventHandler></xp:button>

การลบเอกสาร (แอ็คชันพื้นฐาน)

ลบเอกสารปัจจุบัน และเปิดเพจใหม่

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

เอกสาร (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
deleteDocument name="string" message="string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
name ชื่อของเพจเพื่อเปิดหลังการลบ เอกสารปัจจุบัน รายการของเพจคอมโพเนนต์ที่มีอยู่บวกกับ ไอคอนข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัด เพื่อคำนวณค่าแบบไดนามิก
message พร้อมต์ผู้ใช้ด้วยข้อความยืนยัน ผู้ใช้ตอบกลับด้วย ตกลง เพื่อทำต่อหรือ ยกเลิก เพื่อ ออกจากการทำงาน กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ข้อความในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันแบบง่าย
ปุ่มนี้เปิดไดอะล็อกที่มี ข้อความ "ลบเอกสารหรือไม่?" และปุ่ม ตกลง และ ยกเลิก ถ้าผู้ใช้คลิก ตกลง เอกสารปัจจุบัน จะถูกลบและ page1 แทนเพจปัจจุบัน
<xp:button value="Delete Document" id="button1" 	style="width:143.0px">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:deleteDocument name="/page1.xsp" 
		message="Delete the document?">
	</xp:deleteDocument>
</xp:this.action></xp:eventHandler></xp:button>

การลบเอกสารที่เลือกไว้ (แอ็คชันพื้นฐาน)

ลบเอกสารที่เลือกในมุมมอง

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิด

เอกสาร (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
deleteSelectedDocuments view="string" "message=string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
view ชื่อของมุมมอง รายการมุมมองบนเพจบวกกับไอคอน ข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัด เพื่อคำนวณค่าแบบไดนามิก
message พร้อมต์ผู้ใช้ด้วยข้อความยืนยัน ผู้ใช้ตอบกลับด้วย ตกลง เพื่อทำต่อหรือ ยกเลิก เพื่อ ออกจากการทำงาน ฟิลด์ข้อความบวกกับไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ข้อความในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันแบบง่าย
ปุ่มนี้พร้อมต์ด้วยข้อความ "ลบเอกสารที่เลือกหรือไม่?" และปุ่ม ตกลง และ ยกเลิก ถ้าผู้ใช้คลิก ตกลง เอกสารที่เลือก ในมุมมอง viewPanel1 จะถูกลบ
<xp:button value="Delete Selected Documents" id="button3" 	style="width:183.0px">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:deleteSelectedDocuments view="viewPanel1"	message="Delete selected documents?">
	</xp:deleteSelectedDocuments>
</xp:this.action></xp:eventHandler></xp:button>

การเรียกใช้งานสคริปต์ฝั่งไคลเอ็นต์ (แอ็คชันพื้นฐาน)

เรียกใช้งานสคริปต์ฝั่งไคลเอ็นต์

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิด

ระดับต้น (ไคลเอ็นต์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
executeClientScript ![CDATA[JavaScript]]
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
ไม่แสดงใน XSP ต่อไปนี้:
  • javascript
กล่องคอมโบที่มีอ็อพชัน JavaScript (ฝั่งไคลเอ็นต์)
JavaScript โค้ด JavaScript ที่ถูกต้อง พื้นที่เพื่อพิมพ์สคริปต์บวกกับปุ่ม เปิด Script Editor

การใช้งาน

ดูที่ คำแนะนำ เกี่ยวกับการอ้างอิง JavaScript และ XPages สำหรับการเขียน JavaScript

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
ปุ่มนี้ใช้ JavaScript เพื่อโพสต์การแจ้งเตือน
<xp:button value="Label" id="button1">
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete" id="eventHandler1">
<xp:this.script>
	<xp:executeClientScript>
		<xp:this.script><![CDATA[window.alert("Hello world!")]]></xp:this.script>
	</xp:executeClientScript>
</xp:this.script>
</xp:eventHandler></xp:button>

การเรียกใช้งานสคริปต์ (แอ็คชันพื้นฐาน)

เรียกใช้งานสคริปต์หรือนิพจน์ EL

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิด

ระดับต้น (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
executeScript script=#{javascript:<JavaScript>}
executeScript script=#{<EL_expression>}
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
สคริปต์ หนึ่งในการดำเนินการต่อไปนี้:
  • javascript
  • xpath
  • null (สำหรับ EL)
กล่องคอมโบที่มีอ็อพชัน JavaScript (ฝั่งเซิร์ฟเวอร์), Expression Language (EL) หรือ แบบกำหนดเอง
JavaScript โค้ด JavaScript ที่ถูกต้อง พื้นที่เพื่อพิมพ์สคริปต์บวกกับปุ่ม เปิด Script Editor
EL_expression นิพจน์ EL ที่ถูกต้อง พื้นที่เพื่อพิมพ์นิพจน์บวกกับปุ่ม เปิด Script Editor

การใช้งาน

ดูที่ คำแนะนำ เกี่ยวกับการอ้างอิง JavaScript และ XPages สำหรับการเขียน JavaScript ค้นหาเว็บเพื่อหาเอกสารคู่มือนิพจน์ EL

ถ้าคุณระบุ แบบกำหนดเอง ใน UI ป้อนซอร์สโค้ด XSP เริ่มต้นด้วย # (เครื่องหมาย ปอนด์) และลงท้ายด้วย } (เครื่องหมายปีกกาปิด)

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
ปุ่มนี้ใช้ JavaScript เพื่อโพสต์การแจ้งเตือน
<xp:button value="Save" id="button1" style="width:148.0px">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:executeScript><xp:this.script>
		<![CDATA[#{javascript:var doc = database.createDocument(); doc.appendItemValue("Subject", "my subject"); return doc.save()}]]>
	</xp:this.script></xp:executeScript>
</xp:this.action></xp:eventHandler></xp:button>

การปรับเปลี่ยนฟิลด์ (แอ็คชันพื้นฐาน)

ปรับเปลี่ยนฟิลด์ในเอกสารปัจจุบัน

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิด

เอกสาร (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
modifyField name="string" value="generic"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
name ชื่อของฟิลด์ในเอกสารปัจจุบัน กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ชื่อฟิลด์ในกล่องแก้ไข หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
value ค่าเพื่อใส่ในฟิลด์ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่องแก้ไข หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

การใช้งาน

ดูที่ getElementById สำหรับ การรับค่าชื่อฟิลด์

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน

ปุ่มนี้เปลี่ยนแปลงค่ากล่องแก้ไข inputText1 เป็น green

<xp:button value="Label" id="button1">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:modifyField name="inputText1" value="green"></xp:modifyField>
</xp:this.action>
</xp:eventHandler>
</xp:button>

Open Page (แอ็คชันพื้นฐาน)

แทนที่เพจปัจจุบัน

กำหนดไว้ใน

แอ็คชันแบบง่าย

ชนิดของแอ็คชันแบบง่าย

ระดับต้น (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
openPage name="string" target="string" documentId="string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
name ชื่อของเพจในคอมโพเนนต์ เพจ แทนที่ใช้รูปแบบของเพจคอมโพเนนต์ที่ระบุในที่นี้ รายการของเพจคอมโพเนนต์ที่มีอยู่บวกกับ ไอคอนข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัด เพื่อคำนวณค่าแบบไดนามิก
target โหมดเอกสารปลายทางสำหรับการใส่ข้อมูลเพจ การแทนที่ หนึ่งในการดำเนินการต่อไปนี้:
  • newDocument ไม่ใส่ข้อมูลในเพจ เพจ สามารถแก้ไขได้
  • openDocument ใส่ข้อมูลในเพจจากเอกสาร ที่มีอยู่ เพจไม่สามารถแก้ไข
  • editDocument ใส่ข้อมูลเพจจากเอกสาร ที่มีอยู่ เพจสามารถแก้ไขได้
รายการที่แสดงด้านล่างรวมกับไอคอนข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
  • สร้างเอกสาร
  • เปิดเอกสาร
  • แก้ไขเอกสาร
documentId ID ของเอกสารที่มีอยู่ จำเป็นต้องมีสำหรับโหมด openDocument และ editDocument กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันแบบง่าย
(1) ปุ่มนี้เปิดเพจ สำหรับ page0 ในโหมด สร้างเอกสาร
<xp:button id="button1" value="open new">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:openPage name="/page0.xsp" target="newDocument"></xp:openPage>
</xp:this.action></xp:eventHandler></xp:button>
(2) ปุ่มนี้เปิดเพจสำหรับ page0 ในโหมด เปิด เอกสาร เอกสารที่มี ID เป็น sessionScope.y จะใส่ข้อมูล เพจ ตัวแปร sessionScope ต้องถูกตั้งค่า ไว้ก่อนหน้านี้
<xp:button id="button1" value="open new">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:openPage name="/page0.xsp" target="openDocument" 
	documentId="#{javascript:sessionScope.y}"></xp:openPage>
</xp:this.action></xp:eventHandler></xp:button>
(3) ปุ่มนี้เปิดเพจสำหรับ page0 ในโหมด แก้ไข เอกสาร เอกสารที่มี ID เป็น sessionScope.y จะใส่ข้อมูล เพจ ตัวแปร sessionScope ต้องถูกตั้งค่า ไว้ก่อนหน้านี้
<xp:button id="button1" value="open new">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:openPage name="/page0.xsp" target="editDocument" 
	documentId="#{javascript:sessionScope.y}"></xp:openPage>
</xp:this.action></xp:eventHandler></xp:button>

การเผยแพร่คุณสมบัติคอมโพเนนต์ (แอ็คชันพื้นฐาน)

เผยแพร่เหตุการณ์คอมโพเนนต์

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

คอมโพเนนต์ (ไคลเอ็นต์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
publishValue name="eventname"	value="value" type="type"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
eventname ชื่อเหตุการณ์ของคุณสมบัติที่จะเผยแพร่ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์สตริงลงในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
value ค่าของคุณสมบัติ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์สตริงลงในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
type ชนิดข้อมูลของคุณสมบัติ: String (ดีฟอลต์), Boolean, Number หรือ JSON รายการดร็อปดาวน์บวกกับไอคอนข้าวหลามตัด คุณ สามารถเลือกค่าหรือคลิกข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก

การใช้งาน

ดูที่ ../com.ibm.designer.domino.ui.doc/wpd_compwidget.html สำหรับ คำแนะนำเกี่ยวกับคอมโพเนนต์

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
ปุ่มนี้เผยแพร่เหตุการณ์ คอมโพเนนต์
<xp:button value="Send Frank Adams" id="button2">
	<xp:eventHandler event="onclick" submit="true"
		refreshMode="complete">
		<xp:this.script>
			<xp:publishValue name="UserSelected"
				value="CN=Frank Adams/O=renovations" type="string">
			</xp:publishValue>
		</xp:this.script>
	</xp:eventHandler>
</xp:button>

การเผยแพร่คอลัมมน์มุมมอง (แอ็คชันพื้นฐาน)

เผยแพร่ค่าของคอลัมน์มุมมองเป็นเหตุการณ์คอมโพเนนต์

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันแบบง่าย

คอมโพเนนต์ (ไคลเอ็นต์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
publishViewColumn name="eventname" columnName="columnname" type="type"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
eventname ชื่อเหตุการณ์ของคุณสมบัติที่จะเผยแพร่ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์สตริงลงในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
columnname ชื่อของคอลัมน์ กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์สตริงลงในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
type ชนิดข้อมูลของคุณสมบัติ: String (ดีฟอลต์), Boolean, Number หรือ JSON รายการดร็อปดาวน์บวกกับไอคอนข้าวหลามตัด คุณ สามารถเลือกค่าหรือคลิกข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก

การใช้งาน

ดูที่ ../com.ibm.designer.domino.ui.doc/wpd_compwidget.html สำหรับ คำแนะนำเกี่ยวกับคอมโพเนนต์

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
ปุ่มนี้เผยแพร่เหตุการณ์ คอมโพเนนต์
<xp:viewColumn columnName="City" id="viewColumn4" displayAs="link">
	<xp:viewColumnHeader value="City" id="viewColumnHeader4"
		style="font-weight:bold">
	</xp:viewColumnHeader>
	<xp:eventHandler event="onclick">
		<xp:this.script>
			<xp:publishViewColumn name="UserSelected"
				columnName="EMail">
			</xp:publishViewColumn>
		</xp:this.script>
	</xp:eventHandler>
</xp:viewColumn>

การบันทึกแหล่งข้อมูล (แอ็คชันพื้นฐาน)

บันทึกแหล่งข้อมูลทั้งหมดบนเพจปัจจุบัน และเปิด เพจใหม่

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

ระดับต้น (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
save "name=string"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
name ชื่อของเพจในคอมโพเนนต์ เพจ แทนที่ใช้รูปแบบของเพจคอมโพเนนต์ที่ระบุในที่นี้ รายการของเพจคอมโพเนนต์ที่มีอยู่บวกกับ ไอคอนข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัด เพื่อคำนวณค่าแบบไดนามิก

การใช้งาน

ในเพจที่มีแหล่งข้อมูลหนึ่งแหล่ง และ พาเนลบนเพจนั้นที่มีแหล่งข้อมูลอื่นๆ แอ็คชันแบบง่ายนี้ บันทึกแหล่งข้อมูลทั้งสอง

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน

เพจด้านล่างมีแหล่งข้อมูล กล่องแก้ไข และปุ่มที่มีแอ็คชันพื้นฐาน บันทึกแหล่งข้อมูล รวมทั้งมีพาเนลที่มีแหล่งข้อมูลต่างหาก และกล่องแก้ไข ปุ่มบันทึกข้อมูลที่พิมพ์ทั้งในกล่องแก้ไข เพจและกล่องแก้ไขพาเนล และแทนที่เพจด้วย page0

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

	<xp:this.data>
		<xp:dominoDocument var="document1" formName="form0"></xp:dominoDocument>
	</xp:this.data>
	<xp:inputText id="inputText1" value="#{document1.field0}"></xp:inputText>
	<xp:br></xp:br>
	<xp:panel style="height:190.0px">
		<xp:this.data>
			<xp:dominoDocument var="document2" formName="form1"></xp:dominoDocument>
		</xp:this.data>
		<xp:inputText id="inputText2" value="#{document2.field0}"></xp:inputText></xp:panel>
	<xp:button value="Save All" id="button1"><xp:eventHandler event="onclick" submit="true" refreshMode="complete">
	<xp:this.action>
		<xp:save name="/page0.xsp"></xp:save>
	</xp:this.action></xp:eventHandler></xp:button></xp:view>

การบันทึกเอกสาร (แอ็คชันพื้นฐาน)

บันทึกเอกสารปัจจุบัน

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิด

เอกสาร (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
saveDocument

การใช้งาน

แอ็คชันแบบง่ายนี้บันทึกแหล่งข้อมูล ที่สัมพันธ์กับเอกสาร แต่ไม่บันทึกแหล่งข้อมูลอื่นๆ บนเพจ ตัวอย่างเช่น แหล่งข้อมูลแยกต่างหากสำหรับพาเนล ดูที่ บันทึกแหล่งข้อมูล

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน

ตัวอย่างนี้มีแหล่งข้อมูล, กล่องแก้ไข, และปุ่มมที่มีแอ็คชันพื้นฐาน บันทึกเอกสาร รวมทั้งมีพาเนลที่มีแหล่งข้อมูล กล่องแก้ไข และปุ่มที่มีแอ็คชันแบบง่าย บันทึกเอกสาร ต่างหาก แอ็คชัน บันทึกเอกสาร บันทึกเฉพาะ ข้อมูลสำหรับเพจหรือพาเนล

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

	<xp:this.data>
		<xp:dominoDocument var="document1" formName="form0"></xp:dominoDocument>
	</xp:this.data>
	<xp:inputText id="inputText1" value="#{document1.field0}"></xp:inputText>
	<xp:br></xp:br>
	<xp:panel style="height:190.0px">
		<xp:this.data>
			<xp:dominoDocument var="document2" formName="form1"></xp:dominoDocument>
		</xp:this.data>
		<xp:inputText id="inputText2" value="#{document2.field0}"></xp:inputText>
		<xp:br></xp:br>
		<xp:button value="Save" id="button3"><xp:eventHandler event="onclick" submit="true" refreshMode="complete">
	<xp:this.action>
		<xp:saveDocument></xp:saveDocument>
	</xp:this.action></xp:eventHandler></xp:button></xp:panel>
	<xp:button value="Save" id="button1"><xp:eventHandler event="onclick" submit="true" refreshMode="complete">
	<xp:this.action>
		<xp:saveDocument></xp:saveDocument>
	</xp:this.action></xp:eventHandler></xp:button>
	<xp:button value="Exit" id="button2"><xp:eventHandler event="onclick" submit="true" refreshMode="complete">
	<xp:this.action>
		<xp:openPage name="/page0.xsp" target="newDocument"></xp:openPage>
	</xp:this.action></xp:eventHandler></xp:button></xp:view>

การส่งเมล (แอ็คชันพื้นฐาน)

ส่งข้อความเมล

กำหนดไว้ใน

แอ็คชันแบบง่าย

ชนิดของแอ็คชันพื้นฐาน

ระดับต้น (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
sendMail from="address" to="name" cc="address" bcc="address" subject="string" bodyHtml="string" bodyPlain="string" importance="low|medium|high" deliveryReport="none|onlyonfailure|confirmdelivery|traceentirepath" deliveryPriority="low|medium|high" preventCopying="true|false" markSubjectConfidential="true|false" embeddedFormat="json|xml" htmlUrl="string" gadgetUrl="string"
<xp:this.eeContext>
	<xp:parameter name="name" value="string"></xp:parameter>
	...
</xp:this.eeContext>
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
from แสดงแอดเดรสของผู้ส่ง กำหนดค่าดีฟอลต์แอดเดรส ของผู้ใช้ปัจจุบัน แอดเดรสนี้ปรากฏขึ้นเป็นการแสดงผลในข้อความ, แต่ผู้ส่งจริงคือผู้ใช้ปัจจุบัน กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
to แอดเดรสผู้รับ คั่นแอดเดรสด้วย เครื่องหมายคอมมา กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
cc แอดเดรสของผู้รับสำเนาถึง คั่นแอดเดรส ด้วยเครื่องหมายคอมมา กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
bcc แอดเดรสของผู้รับสำหรับสำเนาลับ คั่นแอดเดรส ด้วยเครื่องหมายคอมมา กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
subject ชื่อเรื่องของเมล กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
bodyHtml เนื้อความของเมลในรูปของ HTML กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
bodyPlain เนื้อความของเมลในรูปของ plain text กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
importance ตัวกำหนดความสำคัญของการจัดส่ง
  • low
  • medium
  • high
รายการบวกกับไอคอนรูปข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
deliveryReport ตัวออกแบบรายงานการจัดส่ง
  • none
  • onlyonfailure
  • confirmdelivery
  • traceentirepath
รายการบวกกับไอคอนรูปข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
deliveryPriority ตัวกำหนดลำดับความสำคัญของการจัดส่ง กำหนดเมื่อ Notes จัดเส้นทางไปยังผู้รับเมล Notes
  • low
  • medium
  • high
รายการบวกกับไอคอนรูปข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
preventCopying ปกป้องผู้รับข้อความจากการทำสำเนา, การพิมพ์, การส่งต่อ, หรือการตอบกลับประวัติ
  • true
  • false
รายการบวกกับไอคอนรูปข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
markSubjectConfidential นำหน้า "ลับเฉพาะ" ในชื่อเรื่อง
  • true
  • false
รายการบวกกับไอคอนรูปข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
embeddedFormat รูปแบบของ Embedded Experience ส่วนของ MIME
  • json
  • xml
รายการบวกกับไอคอนรูปข้าวหลามตัด คุณสามารถเลือกจากรายการหรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
htmlUrl HTML URL สำหรับ Embedded Experience กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
gadgetUrl แกดเจ็ต URL OpenSocial สำหรับ Embedded Experience กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในกล่อง หรือคลิกข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก
parameter พารามิเตอร์สำหรับการใช้ข้อมูลเพิ่มเติม ไปยังคอนโทรลและโมเดลข้อมูลที่สนับสนุนคุณสมบัติ (เช่น คอนโทรลลิงก์) ตารางที่มีคอลัมน์สำหรับชื่อและค่า, และปุ่มที่ต้องการเพิ่มและลบแถว

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันแบบง่าย
ปุ่มนี้ส่งข้อความเมล จากผู้ใช้ปัจจุบันที่ต้องการใช้อินพุตจากคอนโทรลที่โยงกับตัวแปรที่กำหนดขอบเขตไว้, และสำเนาของผู้ใช้ปัจจุบัน
<xp:button id="button25" value="sendmail">
	<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
		<xp:this.action>
			<xp:sendMail to="#{javascript:return requestScope.to}"
				subject="#{javascript:requestScope.subject}"
				bodyPlain="#{javascript:requestScope.body}"
				cc="#{javascript:@UserName()}">
			</xp:sendMail>
		</xp:this.action>
	</xp:eventHandler>
</xp:button>

แอ็คชันตั้งค่าโหมดของคอมโพเนนต์ (แอ็คชันพื้นฐาน)

เปลี่ยนโหมดของคอมโพเนนต์

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

คอมโพเนนต์ (ไคลเอ็นต์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันแบบง่ายควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
setComponentMode cancel="true" mode="edit"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
cancel ระบุว่าโหมดถูกเปลี่ยนแปลงผ่านปุ่มยกเลิก หรือไม่ รายการดร็อปดาวน์บวกกับไอคอนข้าวหลามตัด คุณ สามารถเลือก จริง หรือเท็จ หรือคลิกข้าวหลามตัดเพื่อคำนวณค่าแบบ ไดนามิก
mode โหมดใหม่: view, edit หรือ help กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์สตริงลงในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

การใช้งาน

ดูที่ ../com.ibm.designer.domino.ui.doc/wpd_compwidget.html สำหรับ คำแนะนำเกี่ยวกับคอมโพเนนต์

โหมดคอมโพเนนต์ถูกใช้โดย Mashups

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
ปุ่มนี้เปลี่ยนแปลงโหมด ของคอมโพเนนต์
<xp:button value="Label" id="button1"><xp:eventHandler event="onclick" submit="true" refreshMode="complete" id="eventHandler1">
	<xp:this.action id="this.action2">
		<xp:setComponentMode cancel="true" mode="edit"></xp:setComponentMode>
	</xp:this.action></xp:eventHandler></xp:button>

การตั้งค่า (แอ็คชันพื้นฐาน)

ตั้งค่าของนิพจน์ที่คำนวณ

กำหนดไว้ใน

แอ็คชันพื้นฐาน

ชนิดของแอ็คชันพื้นฐาน

ระดับต้น (เซิร์ฟเวอร์)

ไวยากรณ์

หมายเหตุ: นี้คือซอร์สโค้ด XSP โดย UI แสดงแอ็คชันพื้นฐานควบคู่กับกล่องสำหรับแต่ละอาร์กิวเมนต์
setValue binding=javax.faces.el.ValueBinding object value="generic"
อาร์กิวเมนต์ คำอธิบาย การนำเสนอ UI
binding ชี้ไปยังข้อมูลที่มีค่าที่จะตั้งค่า กล่องแก้ไขที่มีไอคอนข้าวหลามตัด ดับเบิลคลิก ฟิลด์ หรือคลิกข้าวหลามตัดเพื่อคำนวณค่าแบบไดนามิก
value ค่าที่จะตั้ง กล่องแก้ไขที่มีไอคอนข้าวหลามตัด คุณสามารถ พิมพ์ค่าในฟิลด์ หรือคลิกที่ข้าวหลามตัดเพื่อคำนวณค่า แบบไดนามิก

การใช้งาน

นิพจน์สามารถใช้สำหรับอ็อบเจ็กต์ อ่านอย่างเดียว

ตัวอย่าง

หมายเหตุ: ตัวอย่างเหล่านี้แสดงซอร์สโค้ด XSP ซึ่งสามารถแทรกในแท็บซอร์สที่จัดให้ XML อยู่ในรูปแบบที่เหมาะสม เมื่อต้องการใช้ UI เลือกหรือป้อนอาร์กิวเมนต์ ในไดอะล็อกแอ็คชันพื้นฐาน
ปุ่มนี้ตั้งค่า green สำหรับ [computed expression]
<xp:button value="Set Value" id="button1" style="width:142.0px">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
	<xp:setValue binding=[ce] value="green"></xp:setValue>
</xp:this.action></xp:eventHandler></xp:button>

โกลบอลอ็อบเจ็กต์และฟังก์ชัน (JavaScript)

โกลบอลอ็อบเจ็กต์มี entry points ไปยังสคริปต์ฝั่งเซิร์ฟเวอร์ การป้อนชื่อของโกลบอลอ็อบเจ็กต์จะสร้างอินสแตนซ์ของอ็อบเจ็กต์

สคริปต์ฝั่งเซิร์ฟเวอร์สนับสนุน โกลบอลอ็อบเจ็กต์ และ โกลบอลฟังก์ชัน

โกลบอลอ็อบเจ็กต์

ตาราง ต่อไปนี้แสดงรายการโกลบอลอ็อบเจ็กต์

ชื่อโกลบอลอ็อบเจ็กต์ คำอธิบาย
applicationScope (JavaScript) อ็อบเจ็กต์ com.sun.faces.context.ApplicationMap ที่อนุญาตให้คุณแบ่งใช้ค่ากับทั้งเพจในระหว่างใช้งาน แอ็พพลิเคชัน
context อ็อบเจ็กต์ XSPContext ที่มี การเข้าถึงเซิร์ฟเวอร์ฐานข้อมูล เบราว์เซอร์ผู้ใช้ และอ็อบเจ็กต์อื่นๆ
cookie อ็อบเจ็กต์ com.sun.faces.context.RequestCookieMap ที่มีแม็พที่ไม่เปลี่ยนแปลงของค่าคุกกี้สำหรับการร้องขอ ปัจจุบัน ที่คีย์ตามชื่อคุกกี้
currentDocument อ็อบเจ็กต์ NotesXspDocument ที่ ร้องขอเอกาสรที่ใกล้เคียงที่สุดในบริบทปัจจุบัน
database อ็อบเจ็กต์ com.ibm.domino.xsp.module.nsf.NSFComponentModule$XPagesDatabase ที่แทนค่าฐานข้อมูล IBM Domino ที่กำลังใช้เป็นแหล่งข้อมูลอยู่ในปัจจุบัน
document1, document2 และตามลำดับ อ็อบเจ็กต์ NotesXspDocument ที่ แสดงแหล่งข้อมูลเอกสาร Domino เหล่านี้คือชื่อดีฟอลต์ซึ่งคุณอาจเปลี่ยนแปลง ใช้ currentDocument เพื่อ เข้าถึงแหล่งข้อมูลปัจจุบัน
facesContext อ็อบเจ็กต์ com.ibm.xsp.domino.context.DominoFacesContext ที่แสดงอินสแตนซ์บริบท faces สำหรับการร้องขอปัจจุบัน
header อ็อบเจ็กต์ com.sun.faces.context.RequestHeaderMap ที่ระบุแม็พที่ไม่เปลี่ยนแปลงของค่าส่วนหัว HTTP สำหรับการร้องขอ ปัจจุบัน คีย์โดยชื่อส่วนหัว เฉพาะค่าแรกสำหรับชื่อส่วนหัวแต่ละ ชื่อถูกรวมไว้
headerValues อ็อบเจ็กต์ com.sun.faces.context.RequestHeaderValuesMap ที่ระบุแม็พที่ไม่เปลี่ยนแปลงของอาร์เรย์ String ที่มีค่าส่วนหัว ทั้งหมดสำหรับส่วนหัว HTTP ในการร้องขอปัจจุบัน คีย์โดย ชื่อส่วนหัวข้อ
initParam อ็อบเจ็กต์ com.sun.faces.context.InitParameterMap ที่ระบุแม็พที่ไม่เปลี่ยนแปลงของพารามิเตอร์การกำหนดค่าเริ่มต้นบริบท สำหรับเว็บแอ็พพลิเคชันนี้
param อ็อบเจ็กต์ com.sun.faces.context.RequestParameterMap ที่ระบุแม็พที่ไม่เปลี่ยนแปลงของพารามิเตอร์การร้องขอสำหรับการร้องขอ นี้ คีย์โดยชื่อพารามิเตอร์ เฉพาะค่าแรกสำหรับชื่อพารามิเตอร์แต่ละ ชื่อถูกรวมไว้
paramValues อ็อบเจ็กต์ com.sun.faces.context.RequestParameterValuesMap ที่ระบุแม็พที่ไม่เปลี่ยนแปลงของอาร์เรย์ String ที่มีค่าพารามิเตอร์ ทั้งหมดสำหรับพารามิเตอร์การร้องขอในการร้องขอปัจจุบัน คีย์ด้วยชื่อพารามิเตอร์
requestScope (JavaScript) อ็อบเจ็กต์ com.sun.faces.context.RequestMap ที่อนุญาตให้คุณแบ่งใช้ค่ากับทั้งเพจสำหรับช่วงระหว่าง การร้องขอ
session อ็อบเจ็กต์ lotus.domino.local.Session ที่แสดงเซสชัน Domino ปัจจุบัน ซึ่ง credentials อิงตามผู้ใช้
sessionAsSigner อ็อบเจ็กต์ lotus.domino.local.Session ที่แสดงเซสชัน Domino ปัจจุบัน ซึ่ง credentials อิงตามผู้ลงนาม XPage
sessionAsSignerWithFullAccess อ็อบเจ็กต์ lotus.domino.local.Session ที่แสดงเซสชัน Domino ปัจจุบัน ที่มี credentials ตามผู้ลงนาม XPage ที่มีการเข้าถึงแบบเต็ม
sessionScope (JavaScript) อ็อบเจ็กต์ com.sun.faces.context.SessionMap ที่อนุญาตให้คุณแบ่งใช้ค่ากับทั้งเพจสำหรับช่วงระหว่าง เซสชัน
view อ็อบเจ็กต์ com.ibm.xsp.component.UIViewRootEx2 ที่แสดงรากมุมมอง UI ของแผนผังคอมโพเนนต์ปัจจุบัน
view1, view2 และตามลำดับ อ็อบเจ็กต์ lotus.domino.local.View ที่แสดงแหล่งข้อมูลมุมมอง Domino ชื่อเป็นชื่อที่ผู้ใช้กำหนด และอาจแตกต่างกัน
viewScope อ็อบเจ็กต์ javax.faces.component.UIViewRoot$ViewMap ที่อนุญาตให้คุณแบ่งใช้ค่ากับทั้งมุมมอง

โกลบอลฟังก์ชัน

โกลบอล ฟังก์ชันสามารถเรียกใช้โดยตรงจากสคริปต์ฝั่งเซิร์ฟเวอร์ ตารางต่อไปนี้ แสดงรายการโกลบอลฟังก์ชัน
ชื่อโกลบอลฟังก์ชัน คำอธิบาย
getClientId(id:string) : string รับค่าตัวบ่งชี้ฝั่งไคลเอ็นต์สำหรับคอมโพเนนต์ UI
getComponent (Global objects and functions - JavaScript)(id:string) : javax.faces.component.UIComponent รับค่าอ็อบเจ็กต์ฐานสำหรับคอมโพเนนต์ UI
getForm() : javax.faces.component.UIForm รับค่าฟอร์มที่แสดงต่อผู้ใช้
getLabelFor (Global objects and functions - JavaScript)(component:javax.faces.component.UIComponent) : javax.faces.component.UIComponent รับค่าอ็อบเจ็กต์ฐานสำหรับเลเบลที่สัมพันธ์ กับคอมโพเนนต์ UI
getView() : javax.faces.component.UIViewRoot รับค่ารากของแผนผังคอมโพเนนต์
save() : void บันทึกสภาวะปัจจุบัน

เอกสารคู่มือนี้อ้างถึงผลิตภัณฑ์ต่อไปนี้: IBM Domino, IBM Domino Designer, IBM Notes, IBM iNotes, และ IBM Notes Traveler

applicationScope (JavaScript)

ให้คุณแบ่งใช้ค่ากับทั้งเพจสำหรับช่วงเวลา ของแอ็พพลิเคชัน

โกลบอลอ็อบเจ็กต์นี้อิงตามคลาส Java com.sun.faces.context.ApplicationMap ซึ่ง รวมเมธอดต่อไปนี้:
put(p0:java.lang.Object, p1:java.lang.Object) : java.lang.Object
get(p0:java.lang.Object) : java.lang.Object
ตัวอย่าง เช่น ปุ่มบนเพจอาจมีโค้ดต่อไปนี้สำหรับเหตุการณ์ onClick:
applicationScope.put("hello", "Hello application");
เลเบล บนเพจที่สองอาจมีสูตรต่อไปนี้:
applicationScope.get("hello");

ถ้า ผู้ใช้คลิกปุ่มบนเพจแรก จากนั้นเปิดเพจที่สอง Hello application ปรากฏเป็นเลเบล

ค่าคงอยู่ ตราบใดที่แอ็พพลิเคชันยังมีอยู่ ตัวอย่างเช่น ถ้าคุณคลิกปุ่ม บนเพจแรก ปิดแอ็พพลิเคชัน เปิดแอ็พพลิเคชันอีกครั้ง และไปที่เพจที่สอง ค่าจะยังคงอยู่

ชื่อ ชองค่าและค่าสามารถเป็นอ็อบเจ็กต์ใดๆ ตัวอย่างเช่น คุณ สามารถใช้การรวมต่อไปนี้:
applicationScope.put(1, "Hello application");
applicationScope.get(1);

applicationScope.put("n", 99);
applicationScope.get("n");
คุณยังสามารถวางและ รับค่าเป็นคุณสมบัติที่คุณต้องการ ตัวอย่างเช่น คุณสามารถกำหนด ค่าบนเพจแรกดังนี้:
applicationScope.hello = "Hello application";
บน เพจที่สอง คุณสามารถอ้างอิงค่าดังนี้:
applicationScope.hello;
คุณ สามารถโยงตัวแปร applicationScope เพื่อควบคุม สำหรับ แหล่งข้อมูล เลือก EL Scopes สำหรับ การเชื่อมข้อมูล เลือก applicationScope คุณจะเห็น #{applicationScope.} พิมพ์ชื่อ ของตัวแปรหลังเครื่องหมายจุด ตัวอย่างเช่น:
#{applicationScope.hello}

requestScope (JavaScript)

อนุญาตให้คุณแบ่งใช้ค่ากับทั้งเพจสำหรับช่วงระหว่าง การร้องขอ

โกลบอลอ็อบเจ็กต์นี้อิงตามคลาส Java com.sun.faces.context.RequestMap ซึ่ง รวมเมธอดต่อไปนี้:
put(p0:java.lang.Object, p1:java.lang.Object) : java.lang.Object
get(p0:java.lang.Object) : java.lang.Object
ตัวอย่าง เช่น ปุ่มบนเพจอาจมีโค้ดต่อไปนี้สำหรับเหตุการณ์ onClick:
requestScope.put("hello", "Hello request");;
context.redirectToPage("page2");
เลเบลบนเพจ ที่สอง (page2) อาจมีสูตรต่อไปนี้:
requestScope.get("hello");

ถ้า ผู้ใช้คลิกปุ่มบนเพจแรก จากนั้นเปิดเพจที่สอง Hello request ปรากฏเป็นเลเบล

ค่ายังคงอยู่สำหรับ การร้องขอสำหรับ ตัวอย่างเช่น ถ้าโค้ด onClick เป็น requestScope.hello = "Hello request" เท่านั้นและ คุณเปิด page2 โดยวิธีการอื่น Hello request ไม่ปรากฏเป็นเลเบล

ชื่อของ ค่าและค่าสามารถเป็นอ็อบเจ็กต์ใดๆ ตัวอย่างเช่น คุณ สามารถใช้การรวมต่อไปนี้:
requestScope.put(1, "Hello request");
requestScope.get(1);

requestScope.put("n", 99);
requestScope.get("n");
คุณยังสามารถกำหนค่า เป็นคุณสมบัติ ตัวอย่างเช่น คุณสามารถกำหนด ค่าบนเพจแรกดังนี้:
requestScope.hello = "Hello request";
context.redirectToPage("page2");
บนเพจที่สอง คุณสามารถอ้างอิงค่าดังนี้:
requestScope.hello;
คุณ สามารถโยงตัวแปร requestScope เพื่อควบคุม สำหรับ แหล่ง ข้อมูล เลือก EL Scopes สำหรับ การเชื่อม ข้อมูล เลือก requestScope คุณ จะเห็น #{requestScope.} พิมพ์ชื่อของตัวแปร หลังเครื่องหมายจุด ตัวอย่างเช่น:
#{requestScope.hello}

sessionScope (JavaScript)

อนุญาตให้คุณแบ่งใช้ค่ากับทั้งเพจสำหรับช่วงระหว่าง เซสชัน

โกลบอลอ็อบเจ็กต์นี้อิงตามคลาส Java com.sun.faces.context.SessionMap ซึ่ง รวมเมธอดต่อไปนี้:
put(p0:java.lang.Object, p1:java.lang.Object) : java.lang.Object
get(p0:java.lang.Object) : java.lang.Object
ตัวอย่าง เช่น ปุ่มบนเพจอาจมีโค้ดต่อไปนี้สำหรับเหตุการณ์ onClick:
sessionScope.put("hello", "Hello session");
เลเบล บนเพจที่สองอาจมีสูตรต่อไปนี้:
sessionScope.get("hello");

ถ้า ผู้ใช้คลิกปุ่มบนเพจแรก จากนั้นเปิดเพจที่สอง Hello session ปรากฏเป็นเลเบล

ค่าคงอยู่ ตราบใดที่เซสชันยังมีอยู่ ถ้าคุณปิดแอ็พพลิเคชัน ค่า จะหายไป

ชื่อของค่าและค่าสามารถเป็นอ็อบเจ็กต์ใดๆ ตัวอย่างเช่น คุณสามารถใช้การรวมต่อไปนี้:
sessionScope.put(1, "Hello session");
sessionScope.get(1);

sessionScope.put("n", 99);
sessionScope.get("n");
คุณยังสามารถกำหนค่า เป็นคุณสมบัติ ตัวอย่างเช่น คุณสามารถกำหนด ค่าบนเพจแรกดังนี้:
sessionScope.hello = "Hello session";
บน เพจที่สอง คุณสามารถอ้างอิงค่าดังนี้:
sessionScope.hello;
คุณ สามารถโยงตัวแปร sessionScope เพื่อควบคุม สำหรับ แหล่ง ข้อมูล เลือก EL Scopes สำหรับ การเชื่อม ข้อมูล เลือก sessionScope คุณ จะเห็น #{sessionScope.} พิมพ์ชื่อของตัวแปร หลังเครื่องหมายจุด ตัวอย่างเช่น:
#{sessionScope.hello}

getComponent (Global objects and functions - JavaScript)

รับค่าอ็อบเจ็กต์ฐานสำหรับคอมโพเนนต์ UI

ไวยากรณ์

getComponent(id:string) : javax.faces.component.UIComponent
พารามิเตอร์ คำอธิบาย
id ชื่อของตัวควบคุม UI
ค่าส่งคืน คำอธิบาย
java.faces.component.UIComponent ชนิดที่ส่งคืนจริงขึ้นอยู่กับตัวควบคุม UI ตัวอย่างเช่น กล่องแก้ไขถูกแทนด้วยอ็อบเจ็กต์ชนิด com.ibm.xsp.component.xp.XspInputText โดยทั่วไป อ็อบเจ็กต์ที่ส่งคืนจะมีเมธอด getValue และ setValue สำหรับการเข้าถึงค่าที่ได้รับจาก และส่งไปยังไคลเอ็นต์

ตัวอย่าง

สำหรับตัวอย่างนี้ คุณมีสามกล่อง แก้ไขชื่อ inputText1, inputText2 และ inputText3 ที่กำหนดสำหรับข้อมูลตัวเลข กล่องแก้ไข ที่สามมีเหตุการณ์ onfocus ต่อไปนี้ ในตอนรันไทม์ การคลิกในกล่องสุดท้ายจะใส่ผลรวมของสองกล่องแรกลงไป
getComponent("inputText3").setValue(
 	getComponent("inputText1").getValue() +
 	getComponent("inputText2").getValue())

getLabelFor (Global objects and functions - JavaScript)

รับค่าอ็อบเจ็กต์ฐานสำหรับเลเบลที่สัมพันธ์ กับคอมโพเนนต์ UI

ไวยากรณ์

getLabelFor(component:javax.faces.component.UIComponent) : javax.faces.component.UIComponent
พารามิเตอร์ คำอธิบาย
java.faces.component.UIComponent ตัวควบคุม UI
ค่าส่งคืน คำอธิบาย
java.faces.component.UIComponent ตัวควบคุมเลเบลที่สัมพันธ์กับพารามิเตอร์

การใช้งาน

เลเบลสัมพันธ์กับตัวควบคุม โดยคุณสมบัติ for ซึ่งปรากฏใน UI เป็น เลือก ตัวควบคุมปลายทาง

ถ้าเลเบลไม่เชื่อมโยงกับตัวควบคุม จะเกิดข้อยกเว้นต่อไปนี้: com.ibm.xsp.exception.EvaluationExceptionEx: Error while executing JavaScript computed expression

ตัวอย่าง

ฟิลด์ที่คำนวณนี้แสดงค่า ของเลเบลที่เชื่อมโยงกับกล่องแก้ไข
try {
	return getLabelFor(getComponent("inputText1")).getValue()
} catch(e) {
	return "No label"
}

DOM (JavaScript)

แทนอ็อบเจ็กต์ในรูปแบบ XML Document Object Model

เอกสารคู่มือนี้อ้างถึงผลิตภัณฑ์ต่อไปนี้: IBM Domino, IBM Domino Designer, IBM Notes, IBM iNotes, และ IBM Notes Traveler

DOMAttr (JavaScript)

แทนแอ็ตทริบิวต์ของอิลิเมนต์

กำหนดไว้ใน

DOM (JavaScript)

เมธอด

คลาสนี้สืบทอดเมธอด ของ DOMNode (JavaScript) รวมถึงเมธอดอื่นๆ

การใช้งาน

อ็อบเจ็กต์ Attr สืบทอดอินเตอร์เฟส Node แต่เนื่องจากไม่ได้เป็นชายด์โหนดจริงๆ ของอิลิเมนต์ที่อธิบาย DOM ไม่พิจารณาอ็อบเจ็กต์ Attr เป็นส่วนหนึ่งของแผนผังเอกสาร ดังนั้น แอ็ตทริบิวต์ Node ได้แก่ parentNode, previousSibling และ nextSibling มี ค่า null สำหรับอ็อบเจ็กต์ Attr DOM รับมุมมองที่แอ็ตทริบิวต์ เป็นคุณสมบัติของอิลิเมนต์มากกว่าที่จะมีเอกลักษณ์ต่างหาก จากอิลิเมนต์ที่สัมพันธ์ด้วย ทำให้มีประสิทธิภาพ มากยิ่งขึ้นในการประยุกต์ใช้คุณลักษณะเหล่านั้นเป็นดีฟอลต์แอ็ตทริบิวต์ที่สัมพันธ์ กับอิลิเมนต์ทั้งหมดของชนิดที่กำหนด นอกจากนั้น โหนด Attr อาจไม่ เป็นชายด์ของ DocumentFragment อย่างไรก็ตาม สามารถ สัมพันธ์กับโหนด Element ที่มีภายใน DocumentFragment กล่าวโดยย่อ ผู้ใช้และผู้ประยุกต์ใช้ DOM ต้องทราบว่า โหนด Attr มีบางสิ่งร่วมกันกับอ็อบเจ็กต์อื่นๆ ที่สืบทอด อินเตอร์เฟส Node แต่ยังคงมีความแตกต่างกัน

ค่าที่มีผล ของแอ็ตทริบิวต์ถูกพิจารณาดังนี้: ถ้าแอ็ตทริบิวต์นี้ถูก กำหนดให้มีค่าใดๆ โดยชัดแจ้ง ค่านั้นจะเป็นค่าที่มีผลของ แอ็ตทริบิวต์ มิฉะนั้น ถ้ามีการประกาศค่าสำหรับแอ็ตทริบิวต์นี้ และ การประกาศนั้นรวมค่าดีฟอลต์ ค่าดีฟอลต์นัน้ จะเป็นค่าที่มีผลของแอ็ตทริบิวต์ มิฉะนั้น แอ็ตทริบิวต์จะ ไม่มีอยู่บนอิลิเมนต์นี้ในโมเดลโครงสร้างจนกว่าจะถูกเพิ่มโดย ชัดแจ้ง โปรดสังเกตว่าแอ็ตทริบิวต์ nodeValue บนอินสแตนซ์ Attr ยัง สามารถใช้เพื่อดึงข้อมูลเวอร์ชันสตริงของค่าแอ็ตทริบิวต์

ใน XML ที่ค่าของแอ็ตทริบิวต์สามารถมีการอ้างอิงเอนทิตี โหนดชายด์ของโหนด Attr อาจเป็นโหนด Text หรือ EntityReference (เมื่อค่าเหล่านี้ถูกใช้งานอยู่ ดูคำอธิบายของ EntityReference เพื่อการอภิปราย) เนื่องจาก DOM Core ไม่ทราบชนิดแอ็ตทริบิวต์ จะถือว่าค่าแอ็ตทริบิวต์ทั้งหมดเป็นสตริงแบบง่าย แม้ว่า DTD หรือสกีมาจะประกาศเป็นชนิดที่มีการทำโทเค็นแล้ว

getName (DOMAttr - JavaScript)

รับชื่อของแอ็ตทริบิวต์

กำหนดไว้ใน

DOMAttr

ไวยากรณ์

getName() : string

getOwnerElement (DOMAttr - JavaScript)

รับโหนดอิลิเมนต์ซึ่งโหนดแอ็ตทริบิวต์ถูกเชื่อมต่อ

กำหนดไว้ใน

DOMAttr

ไวยากรณ์

getOwnerElement() : DOMElement

getSpecified (DOMAttr - JavaScript)

ตรวจสอบว่าแอ็ตทริบิวต์ถูกกำหนดค่าโดยชัดแจ้งใน เอกสารต้นฉบับหรือไม่

กำหนดไว้ใน

DOMAttr

ไวยากรณ์

getSpecified() : boolean

getValue (DOMAttr - JavaScript)

รับค่าของแอ็ตทริบิวต์

กำหนดไว้ใน

DOMAttr

ไวยากรณ์

getValue() : string

setValue (DOMAttr - JavaScript)

ตั้งค่าของแอ็ตทริบิวต์

กำหนดไว้ใน

DOMAttr

ไวยากรณ์

setValue(value:string) : void
พารามิเตอร์ คำอธิบาย
value ค่าที่ถูกต้องสำหรับแอ็ตทริบิวต์

การใช้งาน

เมธอดนี้ตั้งค่าสำหรับแอ็ตทริบิวต์ กำหนดค่าให้กับอิลิเมนต์ด้วย setAttributeNode ใน DOMElement

ตัวอย่าง

ปุ่มนี้สร้างเอกสารที่มี ลำดับชั้นของอิลิเมนต์ และตั้งค่าแอ็ตทริบิวต์สำหรับโหนดปลายทาง
var doc = database.createNewDocument();
var dom = doc.getDOM();
ar schema0 = dom.createElement("schema0");
var element0 = dom.createElement("element0");
var attr = dom.createAttribute("Owner");
attr.setValue(session.getCommonUserName());
dom.appendChild(schema0);
schema0.appendChild(element0);
element0.setStringValue(requestScope.s);
element0.setAttributeNode(attr);
doc.save()
XML สำหรับเอกสารนี้อาจปรากฏ ดังนี้:
<schema0>
  <element0 Owner="wpsadmin">foo</element0>
</schema0>

DOMCDATASection (JavaScript)

แทนค่าส่วน CDATA

กำหนดไว้ใน

DOM (JavaScript)

เมธอด

คลาสนี้สืบทอดเมธอด ของ DOMNode (JavaScript), DOMCharacterData (JavaScript) และ DOMText (JavaScript)

การใช้งาน

ส่วน CDATA ถือว่า เนื้อหาข้อมูลของตนเป็นข้อความธรรมดา โดยไม่รู้จักมาร์กอัพใดๆ ยกเว้น ]]> ต่างจาก DOMText (JavaScript)

ส่วน CDATA ไม่สามารถซ้อนกัน

ตัวอย่าง

(1) ปุ่มนี้สร้างเอกสาร ที่มีลำดับชั้นของอิลิเมนต์โดยอิลิเมนต์สุดท้ายมีส่วน CDATA
var doc = database.createNewDocument();
var dom = doc.getDOM();
ar schema0 = dom.createElement("schema0");
var element0 = dom.createElement("element0");
var cdata0 = dom.createCDATASection(requestScope.s);
dom.appendChild(schema0);
schema0.appendChild(element0);
element0.appendChild(cdata0);
doc.save()
XML สำหรับเอกสารนี้ปรากฏดังนี้ ถ้า requestScope.s เป็น <foo>:
<schema0>
  <element0><![CDATA[<foo>]]></element0>
</schema0>
(2) ตัวอย่างนี้เหมือนกับตัวอย่างก่อนหน้านี้ แต่ใช้เมธอด DOMCharacterData เพื่อตั้งค่าข้อมูล:
var doc = database.createNewDocument();
var dom = doc.getDOM();
ar schema0 = dom.createElement("schema0");
var element0 = dom.createElement("element0");
var cdata0 = dom.createCDATASection(null);
dom.appendChild(schema0);
schema0.appendChild(element0);
element0.appendChild(cdata0);
cdata0.setData(requestScope.s);
doc.save()

DOMCharacterData (JavaScript)

ระบุเมธอดสำหรับการเข้าถึงข้อมูลอักขระ

กำหนดไว้ใน

DOM (JavaScript)

เมธอด

คลาสนี้สืบทอดเมธอด ของ DOMNode (JavaScript) เมธอดที่แสดงรายการด้านล่างเป็นส่วนเพิ่มเติม

เมธอด คำอธิบาย
appendData(str:string) : void ผนวกสตริงท้ายข้อมูลใน โหนด
deleteData(offset:int, count:int) : void ลบช่วงของหน่วย 16 บิตออกจากโหนด
getData() : string รับค่าข้อมูลอักขระของโหนด
getLength() : int รับจำนวนยูนิต 16 บิตที่มีอยู่
insertData(offset:int, str:string) : void แทรกสตริงที่อ็อฟเซ็ตหน่วย 16 บิต ที่ระบุ
replaceData(offset:int, count:int, str:string) : void แทนที่อักขระเริ่มต้นที่อ็อฟเซ็ต หน่วย 16 บิตที่ระบุด้วยสตริงที่ระบุ
setData(str:string) : void ตั้งค่าข้อมูลอักขระของโหนด
substringData(offset:int, count:int) : string แยกช่วงข้อมูลจากโหนด

การใช้งาน

อินเตอร์เฟส CharacterData ขยาย Node ด้วยชุดของแอ็ตทริบิวต์ และเมธอดสำหรับการเข้าถึงข้อมูล อักขระใน DOM เพื่อความเข้าใจยิ่งขึ้นชุดนี้ถูกกำหนดในที่นี้มากกว่า บนแต่ละอ็อบเจ็กต์ที่ใช้แอ็ตทริบิวต์และเมธอดเหล่านี้ ไม่มีอ็อบเจ็กต์ DOM สอดคล้องโดยตรงกับ CharacterData แม้ว่า Text และค่าอื่นๆ จะสืบทอด อินเตอร์เฟสจากอ็อบเจ็กต์ อ็อฟเซ็ตทั้งหมดในอินเตอร์เฟสนี้เริ่มต้นจาก 0

ดัง อธิบายในอินเตอร์เฟส DOMString สตริงข้อความใน DOM ถูก แทนใน UTF-16 เช่นเป็นลำดับของหน่วย 16 บิต ใน ส่วนต่อจากนั้น คำว่า หน่วย 16 บิตจะถูกใช้เมื่อจำเป็นเพื่อระบุ การทำดัชนีนั้นบน CharacterData เสร็จในหน่วย 16 บิต

appendData (DOMCharacterData - JavaScript)

ผนวกสตริงท้ายข้อมูลในโหนด

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

appendData(str:string) : void

deleteData (DOMCharacterData - JavaScript)

ลบช่วงของหน่วย 16 บิตออกจากโหนด

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

deleteData(offset:int, count:int) : void
พารามิเตอร์ คำอธิบาย
offset  
count  

getData (DOMCharacterData - JavaScript)

รับค่าข้อมูลอักขระของโหนด

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

getData() : string

getLength (DOMCharacterData - JavaScript)

รับจำนวนยูนิต 16 บิตที่มีอยู่

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

getLength() : int

insertData (DOMCharacterData - JavaScript)

แทรกสตริงที่อ็อฟเซ็ตหน่วย 16 บิตที่ระบุ

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

insertData(offset:int, str:string) : void
พารามิเตอร์ คำอธิบาย
offset  
str  

replaceData (DOMCharacterData - JavaScript)

แทนที่อักขระเริ่มต้นที่อ็อฟเซ็ต หน่วย 16 บิตที่ระบุด้วยสตริงที่ระบุ

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

replaceData(offset:int, count:int, str:string) : void
พารามิเตอร์ คำอธิบาย
offset  
count  
str  

setData (DOMCharacterData - JavaScript)

ตั้งค่าข้อมูลอักขระของโหนด

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

setData(str:string) : void

substringData (DOMCharacterData - JavaScript)

แยกช่วงข้อมูลจากโหนด

กำหนดไว้ใน

DOMCharacterData

ไวยากรณ์

substringData(offset:int, count:int) : string
พารามิเตอร์ คำอธิบาย
offset  
count  

DOMComment (JavaScript)

แทนข้อคิดเห็น

กำหนดไว้ใน

DOM (JavaScript)

เมธอด

คลาสนี้สืบทอดเมธอด ของ DOMNode (JavaScript) และ DOMCharacterData (JavaScript)

การใช้งาน

ดูที่ createComment ใน DOMDocument เพื่อสร้าง โหนดข้อคิดเห็นที่มีข้อความที่ระบุ

คลาสนี้ไม่มีเมธอดของ ตนเอง แต่สามารถใช้เมธอดที่สืบทอดเพื่อแก้ไขข้อความและ โหนด

ตัวอย่าง

ปุ่มนี้สร้างเอกสารที่มี ลำดับชั้นของอิลิเมนต์ และข้อคิดเห็น
var generic = " comment goes here.";
var doc = database.createNewDocument();
var dom = doc.getDOM();
ar schema0 = dom.createElement("schema0");
var element0 = dom.createElement("element0");
var commentd = dom.createComment(generic);
commentd.insertData(0, "DOM");
dom.appendChild(commentd);
dom.appendChild(schema0);
var comments = dom.createComment(generic);
comments.insertData(0, "Schema");
schema0.appendChild(comments);
schema0.appendChild(element0);
element0.setStringValue(requestScope.s);
var commente = dom.createComment(generic);
commente.insertData(0, "Element");
element0.appendChild(commente);
doc.save()
XML สำหรับเอกสารนี้อาจปรากฏ ดังนี้:
<!--DOM comment goes here.-->
<schema0>
  <!--Schema comment goes here.-->
  <element0>foo
    <!--Element comment goes here.-->
  </element0>
</schema0>

DOMDocument (JavaScript)

แทนรากของเอกสาร

กำหนดไว้ใน

DOM (JavaScript)

เมธอด

คลาสนี้สืบทอดเมธอด ของ DOMNode (JavaScript) นอกเหนือจากเมธอดอื่นๆ

createAttribute (DOMDocument - JavaScript)

สร้างแอ็ตทริบิวต์

กำหนดไว้ใน

DOMDocument

ไวยากรณ์

createAttribute(name:string) : DOMAttr

พารามิเตอร์ คำอธิบาย
name ชื่อที่ถูกต้องสำหรับแอ็ตทริบิวต์
ค่าส่งคืน คำอธิบาย
DOMAttr แอ็ตทริบิวต์

การใช้งาน

เมธอดนี้ไม่ตั้งค่าสำหรับ แอ็ตทริบิวต์ หรือกำหนดค่าให้แก่อิลิเมนต์ ตัวอย่างเช่น คุณต้อง ตั้งค่าแอ็ตทริบิวต์ด้วย setValue ใน DOMAttr และกำหนดค่าให้แก่ อิลิเมนต์ด้วย setAttributeNode ใน DOMElement

ตัวอย่าง

ปุ่มนี้สร้างเอกสารที่มี ลำดับชั้นของอิลิเมนต์ และตั้งค่าแอ็ตทริบิวต์สำหรับโหนดปลายทาง
var doc = database.createNewDocument();
var dom = doc.getDOM();
ar schema0 = dom.createElement("schema0");
var element0 = dom.createElement("element0");
var attr = dom.createAttribute("Owner");
attr.setValue(session.getCommonUserName());
dom.appendChild(schema0);
schema0.appendChild(element0);
element0.setStringValue(requestScope.s);
element0.setAttributeNode(attr);
doc.save()
XML สำหรับเอกสารนี้อาจปรากฏ ดังนี้:
<schema0>
  <element0 Owner="wpsadmin">foo</element0>
</schema0>

createAttributeNS (DOMDocument - JavaScript)

สร้างแอ็ตทริบิวต์ของชื่อที่กำหนด หรือชื่อที่เหมาะสม และ URI เนมสเปซ

กำหนดไว้ใน

DOMDocument

ไวยากรณ์

createAttributeNS(name:string) : DOMAttr

createAttributeNS(namespaceURI:string, qualifiedName:string) : DOMAttr

พารามิเตอร์ คำอธิบาย
name  
namespaceURI  
qualifiedName  

createCDATASection (DOMDocument - JavaScript)

สร้างโหนดส่วน CDATA

กำหนดไว้ใน

DOMDocument

ไวยากรณ์

createCDATASection(data:string) : DOMCDATASection
พารามิเตอร์ คำอธิบาย
data เนื้อหาของส่วน CDATA
ค่าส่งคืน คำอธิบาย
DOMCDATASection</