Sample code for 30+ languages & platforms
Tcl

JavaScript console

See more JavaScript Examples

Demonstrates console output using Chilkat JavaScript.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

# This example demonstrates using the built-in console object.
# The Javascript run in this example is shown below.

# Load the JavaScript from a file.
set sbScript [new_CkStringBuilder]

set success [CkStringBuilder_LoadFile $sbScript "qa_data/js_tests/test_console.js" "utf-8"]
if {$success == 0} then {
    puts [CkStringBuilder_lastErrorText $sbScript]
    delete_CkStringBuilder $sbScript
    exit
}

set js [new_CkJs]

set result [new_CkJsonObject]

# Run the JavaScript
# Results (not console output) go to result.
# Note: Eval returns the completion value of the script. This is generally the value of the last evaluated expression.
# In this case, the last evaluated expression is console.log which does not calculate a value. Therefore, it returns undefined.
set success [CkJs_Eval $js $sbScript $result]
if {$success == 0} then {
    puts [CkStringBuilder_lastErrorText $sbScript]
    delete_CkStringBuilder $sbScript
    delete_CkJs $js
    delete_CkJsonObject $result
    exit
}

# We can look at the result, which is "undefined", which is normal and expected.
puts [CkJsonObject_emit $result]
# The result JSON is: {"type":"undefined","value":"undefined"}

# The console output is retrieved by calling ConsoleOutputSb
set sbOut [new_CkStringBuilder]

CkJs_ConsoleOutputSb $js $sbOut
puts [CkStringBuilder_getAsString $sbOut]

delete_CkStringBuilder $sbScript
delete_CkJs $js
delete_CkJsonObject $result
delete_CkStringBuilder $sbOut