6

Was ist der Unterschied zwischen range.getDisplayValue() und range.getValue() auf Google App-Skript?Unterschied zwischen getValue() und getDisplayValue() in Google App Skript

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var sheet = ss.getSheets()[0]; 
var val1 = sheet.getRange(7,5).getDisplayValue(); 
var val2 = sheet.getRange(7,5).getValue(); 

Val1 und Val2 sind beide gleich.

+2

Meistens verwenden Anwendungen einen Wert und einen displayValue, wenn sie mit technischen und "echten" Informationen umgehen. Zum Beispiel könnten Sie ein Länderwählcode-Feld mit einem Anzeigewert von "Sri Lanka" und einem Wert von "94" haben. – Marged

+0

:) Schöne Erklärung – iJay

Antwort

6

getDisplayValue liefert den Wert, wie Sie auf dem Bildschirm sehen, daher immer eine Zeichenkette, während getValue den darunter liegenden Wert zurückgibt, also ein Objekt. Dies kann eine Zeichenfolge sein, wenn der Bereich Text enthält.

Der Unterschied ist deutlicher, wenn der Bereich Zahlen oder Datumsangaben enthält. Insbesondere, wenn das Gebietsschema der Tabelle die Zahlen mit Kommas als Dezimaltrennzeichen formatiert oder wenn Sie benutzerdefinierte Formate in Ihren Bereichen festlegen.

2

Um Henriques Erklärung hinzuzufügen, hier ist ein Beispiel aus meiner Erfahrung.

Ich habe eine Spalte, wo ich Zeit in IST

IST  
-------- 
2:00 AM 

eingeben Und wenn ich den Wert dieser Spalte,

var myTime = range.getValue(); 

, die tatsächlich zurückgegeben,

Sat Dec 30 1899 01:36:40 GMT+0530 (IST) 

Aber range.getDisplayValue() löste mein Problem, das das zurückgab, was ich eingegeben habe, 2:00 Uhr morgens.

Verwandte Themen