diff --git a/js/js.libraries/src/core/core.kt b/js/js.libraries/src/core/core.kt index bab10fde7f9..d036b27b6e3 100644 --- a/js/js.libraries/src/core/core.kt +++ b/js/js.libraries/src/core/core.kt @@ -7,9 +7,10 @@ public external fun eval(expr: String): dynamic = noImpl public external val undefined: Nothing? = noImpl - +@Deprecated("Use toInt(radix) instead.", ReplaceWith("s.toInt(radix)"), level = DeprecationLevel.ERROR) public external fun parseInt(s: String, radix: Int = noImpl): Int +@Deprecated("Use toDouble() instead.", ReplaceWith("s.toDouble()"), level = DeprecationLevel.ERROR) public external fun parseFloat(s: String, radix: Int = noImpl): Double public external fun js(code: String): dynamic = noImpl diff --git a/js/js.translator/testData/box/inlineMultiFile/tryCatch.kt b/js/js.translator/testData/box/inlineMultiFile/tryCatch.kt index 82e91a9ae46..15d2f4c97a1 100644 --- a/js/js.translator/testData/box/inlineMultiFile/tryCatch.kt +++ b/js/js.translator/testData/box/inlineMultiFile/tryCatch.kt @@ -69,6 +69,6 @@ inline fun T.perform(job: (T)-> R) : R { return job(this) } -inline fun String.toInt2() : Int = parseInt(this) +inline fun String.toInt2() : Int = this.toInt() class RuntimeExceptionWithValue(val value: String) : RuntimeException() \ No newline at end of file diff --git a/js/js.translator/testData/box/inlineMultiFile/tryCatch2.kt b/js/js.translator/testData/box/inlineMultiFile/tryCatch2.kt index 78c74fbfda3..7b639319a67 100644 --- a/js/js.translator/testData/box/inlineMultiFile/tryCatch2.kt +++ b/js/js.translator/testData/box/inlineMultiFile/tryCatch2.kt @@ -140,6 +140,6 @@ external object Number { fun parseInt(str: String): Int = noImpl } -inline fun String.toInt2(): Int = parseInt(this) +inline fun String.toInt2(): Int = this.toInt() class RuntimeExceptionWithValue(val value: String = "") : RuntimeException() \ No newline at end of file diff --git a/js/js.translator/testData/box/inlineMultiFile/tryCatchFinally.kt b/js/js.translator/testData/box/inlineMultiFile/tryCatchFinally.kt index cf85138dabb..af9df636218 100644 --- a/js/js.translator/testData/box/inlineMultiFile/tryCatchFinally.kt +++ b/js/js.translator/testData/box/inlineMultiFile/tryCatchFinally.kt @@ -104,4 +104,4 @@ inline fun T.performWithFailFinally(job: (T)-> R, failJob : (e: RuntimeEx } } -inline fun String.toInt2() : Int = parseInt(this) \ No newline at end of file +inline fun String.toInt2() : Int = this.toInt() \ No newline at end of file diff --git a/js/js.translator/testData/webDemoExamples1/cases/ifAsExpression.kt b/js/js.translator/testData/webDemoExamples1/cases/ifAsExpression.kt index bfe971a9f75..2656e0986c9 100644 --- a/js/js.translator/testData/webDemoExamples1/cases/ifAsExpression.kt +++ b/js/js.translator/testData/webDemoExamples1/cases/ifAsExpression.kt @@ -1,5 +1,3 @@ fun main(args: Array) { - println(max(parseInt(args[0]), parseInt(args[1]))) + println(maxOf(args[0].toInt(), args[1].toInt())) } - -fun max(a: Int, b: Int) = if (a > b) a else b \ No newline at end of file diff --git a/js/js.translator/testData/webDemoExamples1/cases/nullChecks.kt b/js/js.translator/testData/webDemoExamples1/cases/nullChecks.kt index af61d76fc08..658d3d93fa2 100644 --- a/js/js.translator/testData/webDemoExamples1/cases/nullChecks.kt +++ b/js/js.translator/testData/webDemoExamples1/cases/nullChecks.kt @@ -1,12 +1,6 @@ // Return null if str does not hold a number -fun myParseInt(str: String): Int? { - try { - return parseInt(str) - } - catch (e: NumberFormatException) { - println("One of argument isn't Int") - } - return null +fun myParseInt(str: String): Int? = str.toIntOrNull().also { + if (it == null) println("One of arguments isn't Int") } fun main(args: Array) { diff --git a/js/js.translator/testData/webDemoExamples1/cases/ranges.kt b/js/js.translator/testData/webDemoExamples1/cases/ranges.kt index 2355da22443..cc5bfefed08 100644 --- a/js/js.translator/testData/webDemoExamples1/cases/ranges.kt +++ b/js/js.translator/testData/webDemoExamples1/cases/ranges.kt @@ -1,6 +1,6 @@ fun main(args: Array) { - val x = parseInt(args[0]) + val x = args[0].toInt() //Check if a number lies within a range: val y = 10 if (x in 1..y - 1) diff --git a/js/js.translator/testData/webDemoExamples2/cases/bottles.kt b/js/js.translator/testData/webDemoExamples2/cases/bottles.kt index 4ea5c7fd74f..1b41b065048 100644 --- a/js/js.translator/testData/webDemoExamples2/cases/bottles.kt +++ b/js/js.translator/testData/webDemoExamples2/cases/bottles.kt @@ -32,7 +32,7 @@ fun main(args: Array) { printBottles(99) } else { - val bottles = parseInt(args[0]); + val bottles = args[0].toIntOrNull() if (bottles != null) { printBottles(bottles); }