liukang b4b8ddf15d admin-vue 1 anno fa
..
dist b4b8ddf15d admin-vue 1 anno fa
.eslintrc.yml b4b8ddf15d admin-vue 1 anno fa
CHANGELOG.md b4b8ddf15d admin-vue 1 anno fa
CONTRIBUTING.md b4b8ddf15d admin-vue 1 anno fa
LICENSE b4b8ddf15d admin-vue 1 anno fa
README.md b4b8ddf15d admin-vue 1 anno fa
bower.json b4b8ddf15d admin-vue 1 anno fa
component.json b4b8ddf15d admin-vue 1 anno fa
karma.conf.ci.js b4b8ddf15d admin-vue 1 anno fa
karma.conf.js b4b8ddf15d admin-vue 1 anno fa
package.json b4b8ddf15d admin-vue 1 anno fa
stackframe-tests.ts b4b8ddf15d admin-vue 1 anno fa
stackframe.d.ts b4b8ddf15d admin-vue 1 anno fa
stackframe.js b4b8ddf15d admin-vue 1 anno fa

README.md

stackframe

JS Object representation of a stack frame

Build Status Coverage Status GitHub license dependencies gzip size module format code of conduct

Underlies functionality of other modules within stacktrace.js.

Written to closely resemble StackFrame representations in Gecko and V8

Usage

// Create StackFrame and set properties
var stackFrame = new StackFrame({
    functionName: 'funName',
    args: ['args'],
    fileName: 'http://localhost:3000/file.js',
    lineNumber: 1,
    columnNumber: 3288, 
    isEval: true,
    isNative: false,
    source: 'ORIGINAL_STACK_LINE'
    evalOrigin: new StackFrame({functionName: 'withinEval', lineNumber: 2, columnNumber: 43})
});

stackFrame.functionName      // => "funName"
stackFrame.setFunctionName('newName')
stackFrame.getFunctionName() // => "newName"

stackFrame.args              // => ["args"]
stackFrame.setArgs([])
stackFrame.getArgs()         // => []

stackFrame.fileName          // => 'http://localhost:3000/file.min.js'
stackFrame.setFileName('http://localhost:3000/file.js')  
stackFrame.getFileName()     // => 'http://localhost:3000/file.js'

stackFrame.lineNumber        // => 1
stackFrame.setLineNumber(325)
stackFrame.getLineNumber()   // => 325

stackFrame.columnNumber      // => 3288
stackFrame.setColumnNumber(20)
stackFrame.getColumnNumber() // => 20

stackFrame.source            // => 'ORIGINAL_STACK_LINE'
stackFrame.setSource('NEW_SOURCE')
stackFrame.getSource()       // => 'NEW_SOURCE'

stackFrame.isEval            // => true
stackFrame.setIsEval(false)
stackFrame.getIsEval()       // => false

stackFrame.isNative          // => false
stackFrame.setIsNative(true)
stackFrame.getIsNative()     // => true

stackFrame.evalOrigin                         // => StackFrame({functionName: 'withinEval', lineNumber: ...})
stackFrame.setEvalOrigin({functionName: 'evalFn', fileName: 'anonymous'})
stackFrame.getEvalOrigin().getFunctionName()  // => 'evalFn'

stackFrame.toString() // => 'funName(args)@http://localhost:3000/file.js:325:20'

Browser Support

Sauce Test Status

Installation

npm install stackframe
bower install stackframe
https://raw.githubusercontent.com/stacktracejs/stackframe/master/dist/stackframe.min.js